Posted on August 14th, 2008 by Reiner.
Categories: English, Computers.
Half an hour ago I wanted to chat with a colleague of mine. I’m not that much into chatting, but into moving all and everything to Google Apps, so I’m on Google Talk (on my mobile as well), but my colleague is registered with Skype and MSN.
Bad luck, maybe hours of installation work ahead (I’m using a Thin Client which normally reverts to its clean boot settings on each power-up - keeping out stray viruses), tedious efforts to bar SuperChat applications from damaging the VOIP client built into my Nokia E90, forgotten passwords and other chores ahead
For immediate anonymous chats, there’s a quick solution: Just add Google Chatback to your website. Chats are anonymous, but they’re not public, i.e. I’ll receive a separate window for each user. So they’re quite safe, unless someone successfully pretends to be my daughter, inquiring about my credit card details.
This one uses iframes, but the badge comes in customizable flavors that don’t require iframes. Provided your mailer program sends html you can even include the chatback badge in your mails. Sadly enough, Google Mail does not allow html in your signature, so you’d have to cut-and-paste each time again.
![]()
Posted on May 4th, 2008 by Reiner.
Categories: English, Computers.
I’d like to present a free solution for Windows XP that reliably records incoming and outgoing SIP phone calls. I’m currently using it to record traditional conference calls for a team of software developers.
By default, Oreka will produce .WAV-files using GSM compression. GSM is widely used for mobile phones, thus files are very small (about 100kBytes/minute), but sound quality is a little bit on the dull side and older applications might fail to understand GSM encoding. If space is of lesser concern, I’d recommend the plain old uncompressed pcmwav format (about 1MByte/minute) that can be read by virtually any program, or the ulaw (best in USA + Japan) or alaw (best in Europe and for international calls) encodings (about 500kBytes/minute) that are commonly used for SIP voice data and can be read by most programs.
With Oreka, audio file storage format can be set up within Oreka’s config.xml (Caution: do not choose native):
<!– Audio file storage format: choose from: native, gsm, ulaw, alaw, pcmwav –>
<StorageAudioFormat>pcmwav</StorageAudioFormat>
When publishing recordings, I’d suggest to produce .mp3-files. Oreka can’t do this on its own (at least the free version). I’m using WavePad to do the job: Drag your .wav file to WavePad, then click Effects, Dynamic Wave Compressor…, Threshold -24dB, Ratio 5:1, Limit 4dB, OK, then Save File As…, MP3, Constant Bitrate, 16kbps, Mono. You’ll end up with tiny files whose quality is superior to the one produced by commercial conference recording systems.
When using an external SIP phone (my favorite is the Thomson Speedtouch ST2030), for Oreka to successfully record your phone calls, it is required that Oreka “hears” all the data being sent from and to your SIP phone. That’s quite easy when using a soft phone on the very same PC that Oreka is running on, but will be more complicated when using an external hardware SIP phone. Current computer network equipment uses network switches to interconnect devices. Switches are smart. They know how to direct network data packets, so that reach their intended receivers - and only those. Let’s assume you’ve connected three devices to your switch (the switch itself possibly having been integrated within your DSL router):
Now, when you place a phone call, your switch will forward voice data from the internet to your phone (and vice versa). Your PC however will not receive any data sent from or received by your phone, effectively deafening Oreka. Although Oreka has instructed the network card within your PC to listen for any traffic (including the traffic that’s not destined for your PC), you won’t be able to record any phone call at all.
So are we stuck yet? Depends. If you are using a VOIP-DSL router where you have plugged your analog phone(s) into, the answer is yes. Read no further. Either look for conferencing services (e.g. Basement Ventures Free Conference Call Services) or analog taps that go in between the cable from your phone and to its handset (e.g. the Radio Shack Mini Recorder Model 43-1237 or the JK Audio THAT-1). However, if you are using a VOIP phone (one that uses Ethernet and does the SIP itself), you’ll get away by replacing your switch with a hub.
Provided you are using a SIP VOIP phone, you’ll either need a switch that features port mirroring (quite expensive) or a network hub, which forwards any data received on one of its ports to all other ports. As far as I know, hubs are no longer being manufactured at all, so you’ll either have to snatch one from a museum or get a used one from eBay. I’ve successfully tested the Netgear FE 10x and DS 10x hubs, both readily available and very inexpensive.
Tom Keating’s article VoIP Call Recording within his VoIP & Gadgets Blog has provided a plethora of invaluable information and thus served as an ideal starting point - a must have!
Posted on March 15th, 2008 by Reiner.
Categories: English, Computers.
Deutsche Fassung bei Debuggen von Java Anwendungen - auf der Überholspur!
When instrumenting your Java application for remote debugging, a commonly used set of VM parameters brings your application to a crawl, as it disables just-in-time compiliation and enforces interpeter-only mode, e.g.:
-Xdebug
-Xnoagent
-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
-Djava.compiler=NONE
Starting with Java 1.4, it is neither required nor advisable to disable the Java just-in-time compiler,
so just remove the -Djava.compiler=NONE:
-Xdebug
-Xnoagent
-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Thus, you are able to prepare your application (e.g. JBoss) for debugging, and there will be no perceivable overhead unless you actually connect your debugger to the debuggee (using remote debugging). And even while debugging, the Java just-in-time compiler will speed up your application. That may be handy for test (or even production) environments that are supposed to both deliver full speed and still supply a back door for debugging once the need arises.
Even recent posts still promote the -Djava.compiler=NONE antipattern, as in See how maven works inside - remote debugging plugins or Debugging your Maven Project in Eclipse.
And the bad -Djava.compiler=NONE habit may still be hidden within numerous configuration files or tools, as it even made its way into Sun’s Java 6 itself. See -Djava.compiler=NONE and -Xdebug anachronisms unanachronistically disable full-speed debugging at Sun’s Bug Database.
Posted on March 15th, 2008 by Reiner.
Categories: English, at Home, Computers.
The Acoustic Energy WIFI Internet Radio
The AE 100 was one of the first devices that, in a stand-alone unit, receives radio broadcasts from all around the world using Reciva technology and firmware.
AE 100 users are well aware of a common pitfall of this unit. When the volume is low your listening experience is impaired by frequent crackling noises.
Where do those crackling sounds come from?
Inside the AE 100 there is a WIFI USB stick, that implements the connection to your wireless LAN. The RF energy of its transmitter leaks into the wires which connect the loadspeakers to the analog amplifier circuit, where it is rectified and causes transmission packets to be heard. Well, it’s not a Sony
How to avoid them?
There are some work-arounds for this bug, notably the one provided at AE 100 crackle problem : yet another fix. Philippe gives detailed instructions on how to dismantle the unit and how to shield the loadspeaker wires using shielding foil from STP computer cabling.
My no materials approach: Just twist them wires
Losely following Philippe’s instructions (I put the unit flat on its side, so I would not need three hands to handle the housing parts), I opened the case and unplugged the loudspeaker wires. Then I twisted them gently, so that they looked similar to the ones found in UTP cabling. I then reconnected the wires and reassembled the unit, trying to put as much of the wires near the loadspeakers as possible.
Less noise in almost no time at all
The crackles can still be heard with the volume set to 1 bar and your ear next to the front grid, but they are no longer perceivable at all during normal use
The actual noise level may be more or less random depending on the position the wires will take when closing the unit.


Posted on July 10th, 2007 by Reiner.
Categories: English, Computers.
After having installed Java 6 Update 2, my Internet Explorer 6 would refuse to start without any indication whatsoever. I’m running Windows 2000 Server and - as I’m doing Java development - there are numerous older JDKs installed on my PC.
The problem appears to be caused by …\Java\jre1.6.0_02\bin\ssv.dll (SSVHelper Class plugin) included within Java 6 Update 2 up to and including build version 1.6.0_02-b05.
IE immediatley returns to normal operation by either uninstalling Java 6 Update 2 or disabling the SSVHelper Class plugin.
As I was unable to disable SSVHelper from within IE 6 (I believe it is an IE 7 feature) I reverted to ShellExView, an excellent Shell Extensions Manager that allows arbitrary Shell Extensions to be disabled in case they are causing problems - SSVHelper in my case.
13-jul-07 update:
The bug has been fixed and the downloads at http://java.sun.com/javase/downloads/ have been updated to build version 1.6.0_02-b06 (as shown by java -version).
To recover your PC from this bug, either re-download and re-install the JRE or disable the SSVHelper Class.
Links:
Posted on July 8th, 2007 by Reiner.
Categories: English, at other Locations, at Home, Computers.
In short: Only use channels 1, 6, 11 (and 14 if you live in Japan) for your 2.4 GHz wireless LAN and simply ignore the other ones. The world will be a better place with no effort at all
Great! Now you have got a WiFi of your own. As you are a prudent guy you’ll carefully choose a free channel so as not to interfere with your neighbors’ WiFis. Scanning for available networks reveals that channels 1, 6, 9 and 11 are already being used, which leaves channel 3 as the way to go. You are quite confident that everything should be in order now. The truth however is rather disconcerting and may come to you as a shock.
What you have really done is, you have set up a new jammer that will halve the throughput of at least 3 networks - including yours. How can that be true?
Only 3 out of 11 channels do not interfere: 1, 6 and 11
This is due to the channel allocation scheme that is used by 802.11 b/g standards and the behaviour of WiFi equipment: While channels are equally spaced 5 MHz apart, the bandwith consumed by a single transmission path is roughly 20 MHz, effectively occupying 5 channel slots: The center channel it is set to, 2 adjacent channels towards lower frequencies and 2 channels towards higher frequencies as well.
Thus a station set to use channel 1 will occupy channels 1-2-3. The next non-overlapping channel will be 6 occupying channel slots 4-5-6-7-8. The only channel left will be channel 11 occupying channel slots 9-10-11.
Overlapping channels substantially decrease throughput
Assuming urban surroundings and just 3 useable non-overlapping channels, wireless networks are bound to interfere with each other. If interference cannot be avoided, why not try to minimize interference by “filling the gaps”? Two stations using the same channel should most certainly experience much more interference than if they were using different ones, even if they were just one slot apart. Suprisingly enough, this is not true.
Wireless stations are by no means dumb passive devices. Before initiating a transmission they will listen for other ongoing transmissions and abide from starting their own transmission when they find that the channel is currently in use, thus minimizing interference (DCF, CSMA) . Sadly enough, this is an important factor that is often overlooked or set aside, even in academic documents.
Now when you offset two stations by less then 5 channels you’ll impede their capability to properly detect ongoing transmissions - practically blindfolding them and turning them into anti-social criminals.
Furthermore, by virtue of its bandwidth, each transmission that does not adhere to the 1-6-11 rule will use up 2 instead of 1 out of the proper channel bands described. Thus stations set to channels other than 1, 6 or 11 will unknowingly and unneccessarily interfere and disrupt both each other and other adjacent channels, in turn causing frequent re-transmission which will bring throughput down to a crawl.
What about channels 12, 13 and 14
Within Europe and Japan, there are two additional channels available: 12 and 13. But they are of little use, as they both overlap with channel 11. Still worse, devices may refuse to connect to those channels, unless they have been set up properly, e.g. a Nokia E6x will no longer connect to channels 12 and 13 when you remove your SIMM.
Channel 14 is a very special case. It is used in Japan only and despite its number it is spaced 12 MHz apart from channel 13, so it might have been named channel 15.4. Transmissions on channel 14 will interfere only minimally with those on channel 11. Therefore, in Japan there are 4 channels that should be used in order to minimize interference: 1, 6, 11 and 14.
Links:
Comming next: Why SuperG and other 108 MBit transmissions often cause more damage than benefit. Why a 3 dB Antenna boosts more than increasing Transmit Power by 12 dB.
Posted on July 5th, 2007 by Reiner.
Categories: English, at Home, Computers.
How can you share your WiFi with your neighbors without being forced to spy on them - just in order to proove that it wasn’t you who put the new Harry Potter into the public domain by mistake?
This post does not offer a ready-to-use solution, but instead provides some work-in-progress material on how to set up a DD-WRT device (using a static public IP) so that it tunnels its WiFi through Relakks. Maybe someone more knowledgeable than me might turn this into a clickable option
(more…)
Posted on May 19th, 2007 by Reiner.
Categories: English, Computers.
I was rather excited to learn that JBoss 4.2 now uses the Unified Invoker by default, which in turn uses JBoss Remoting. Of course I assumed that JBoss Remoting’s thrilling features would be available to the Unified Invoker. I was wrong. (more…)
Posted on May 6th, 2007 by Reiner.
Categories: English, Computers.
The problem has been fixed, but I suggest to wait until the fix will be distributed automatically starting about 22-May-07. Thereafter - in June - you should then switch back from Windows Update to Microsoft Update. Technical info from Les Connor at WSUS v2 client and high CPU fix.
Posted on April 12th, 2007 by Reiner.
Categories: English, Computers.
There have been reports, that Microsoft Update (not Windows Update) may clog your CPU for some time after booting your PC.
On my system wuauclt.exe keeps one of its CPUs busy at 100% for about 12 minutes.
See Alex met SVCHOST, where Wim describes a work-around:
Updates:
06-May-07: The problem has been fixed, but I suggest to wait until the fix will be distributed automatically starting about 22-May-07. Threafter - in June - you should then switch back from Windows Update to Microsoft Update. Technical info from Les Connor at WSUS v2 client and high CPU fix.
01-May-07: The problem appears not to have been solved yet. See SVChost performance issues — hold on just a smidge longer.
12-Apr-07: Glad a real guru (Bradley from The SBS Diva Blog) backs this somewhat bleak work-around: SVChost and flipping back to Windows Update
Microsoft may be aware of the problem and is preparing hot-fixes. See
There’s a post that gives some details at Windows Update / Microsoft Update / svchost / Autoupdate / 100% CPU - Patrick Hopp