Sunday, December 30, 2012

MacBook Pro

Well, I've got a MacBook Pro. Let's see.
13" Core i5 2.5GHz, 4GB, 500GB - $1200
$400 more expensive as a windows notebook with the same hardware.
Does it worth the money?
Let's see…

Bad things:

Hardware:
The whole piece aluminum case rather bad than good. Too sharp edges. But I like that I can hold the book by only one hand not being afraid that it will bend and broke.

My home network was not recognized during the setup. It was found later, though.
USB mouse did not work after the book woke up from sleep.

OS X:
I hate the way which the open window icons piles on each other. Looks disgusting. Found how to change that, likely!
The only way to install an app to drag it?

Phonetic keyboard layout is the most stupiedst possible. I hate those who made it.


What I like:

Hardware:
Keyboard work smoothly and fine to touch
There are no speakers in sight, but the sound is clear, nice.
The display is good quality (Not the best, though.). Shows almost the same quality being observed from different angles.

OS X:
I absolutely like that almost every command has a shortcut. Sometimes the key combinations are quite difficult to remember, but still. Would be nice to have shortcuts on the menus as well.


Thursday, November 22, 2012

Speed up virtual android

To run the android emulator fast and smooth - use an x86 image with hardware visualization enabled.
To enable the virtualization: on windows, simple just install the "Intel x86 Emulator Accelerator (HAZM)". The install package could be downloaded using the Android SDK Manager.

On Linux (Debian) make sure the following packages are installed:
qemu-kvm, libvirt-bin

To run the emulator as a kernel-based virtual machine, execute:

emulator-x86 -avd -kernel android-sdk-linux_x86/system-images/android-16/x86/kernel-qemu -qemu -m 512 -enable-kvm

Wednesday, November 21, 2012

Endianness

How to memorize what the Big-endian is and what the Little-endian is?
(The decision to use that meaningless names only in favor of J. Swift talent was quite stupid in the first place.)

So, here's a "simple" rule:
Let's say that the "end" is the starting byte of the memory word (lowest address).
Then "Little" will mean the less-significant, i.e. little part of the number is located at that first byte end.
In contrary, "Big" will mean the most-significant, i.e. biggest part of the number is located at the end  (the first byte).

How to memorize which architecture uses which notation?
The PC which costs a little is based on the x86 architecture which is Little-endian.
Workstations, like SPARC, SGI cost big money, and also they are Big-endian.

Crypted Jelly Bean fix

Android v4.2 changed default provider for SecureRandom. Because of that the Cipher throws this exception on v4.2: BadPaddingException: pad block corrupted.

The solution is quite simple. Just add explicitly specified provider as the second parameter of the SecureRandom.getInstance() method:

 SecureRandom sr = SecureRandom.getInstance( "SHA1PRNG", "Crypto" );

Read more here

Tuesday, November 20, 2012

Depricate an IP address

Say, a server has a number of IP addresses, but we don't want some addresses to be used as outbound.

ipconfig /all   gives us which address is preferred:

 Autoconfiguration Enabled . . . . : Yes
 IPv4 Address. . . . . . . . . . . : 2.68.18.2(Preferred)
 Subnet Mask . . . . . . . . . . . : 255.255.255.248
 IPv4 Address. . . . . . . . . . . : 2.68.18.3(Preferred)
 Subnet Mask . . . . . . . . . . . : 255.255.255.248


To make an address not preferred, remove it from the interface and recreate it again using the netsh:
 
interface ipv4 add address LAN 2.68.18.2 mask=255.255.255.248 preferredlifetime=0


keyboard switching utility

Updated the language switching utility
This utility assigns mostly unused the right "windows" key to switch between the system's languages.

Friday, October 26, 2012

Android application I recommend

RealCalc Scientific Calc - very good calculator (does RPN too)

QuickPic - picture viewer

Bookmark Tree Manager - organizes the browser's bookmarks in to a hierarchy

 ColorDict Dictionary  - offline dictionary

Cool Reader - very good e-books reader

Google Goggles - scans pictures, labels, QR codes, BAR-codes, texts and gives the digital result or links

Google Translate - online translator (input text can be spoken or drawn)

StopWatch & Timer - it is

Radar Now!  - shows the weather radar. Good way to know will be there rain or it will pass by

TuneIn Radio Pro - radio - music and talks from all over the world

Wikipedia - it is

andLess - good music player - plays physical folders, not stupid libraries

Greed  - RSS reader. All favorite news and digests in one place

2X Client RDP - remote desktop client. Works very well

My-Cast Weather - best weather application I've found

Libra - Weight Manager  - just record your everyday weight change

Ghost Commander File Manager - file manager (copy move organize files (music, book, pictures, etc.)). FTP client

SMB plugin for Ghost Commander - a plugin to the above to connect to windows network shares

FTPServer - FTP server. Lets you connect from your PC to the phone to transfer files

KeePassDroid - stores your passwords and other sensitive data (SSN, etc.) encrypted

 Mileage - records the car fueling and shows the mileage charts

Photo Slides (Photo Frame) photo slide show. (If you practice a martial art or similar you can have a set of photos of positions and then exercise by following the pictures the app shows in sequence)

Wifi Analyzer - show how strong the WiFi networks nearby. May be it's a good idea to change the freq. channel for your own network?

 Screen Filter - makes the display even more dimmer

Pedometer ***NEW*** - counts your steps while you're running or walking

Quick System Info PRO - shows comprehensive information about your phone, processes, services, applications and network connections

TV Listings for Android TV24 - browse the current TV schedule



Thursday, October 11, 2012

Icons batch processing

To  convert images to a bigger canvas size preserving the transparency and keeping the content centered:

convert $f -background transparent -compose Copy -gravity center -extent 64x64 out/$f

Friday, October 5, 2012

PB new version

PlayBook has been updated to OS v2.1 ! Now all the Android apps are launched in each own separate windows. That's a great achievement, no doubts. PB is so picky and does not want to be charged via a data cable, but it seems it does charge via a "not-data" cable. I don't understand, what's the difference between cables? Apparently, there are tow charging modes. When the battery icon has a power plug on it and when it has a lightning bolt. I think in the second case it charges faster.

Thursday, September 27, 2012

No dial-up for VPN

If the SonicWall VPN client suddenly asks for a PhoneBook number that could be cured. Go to the properties and under the Peer tab choose "LAN only". From here.

Saturday, September 22, 2012

Dynamic DNS

To prevent windows' DNS server from creating A records on all other interfaces the server might have (such as OpenVPN) to the dynamic DNS list, go to the DNS server's properties and exclude all the interfaces you don't need.

Wednesday, September 19, 2012

Exchange mail filter

MS Exchange 2K3 IMF does not have a senders white list feature, but the IMF has a GUI-less ability to apply additional simple filter to modify the message's SCL rating as described in this article.


In simple words, you need to create an XML file named MSExchange.UceContentFilter.xml and put it to the folder where MSExchange.UceContentFilter.dll is located (there's more then one, I'm not sure which is active just placed to all of them)

A sample of such file:
<?xml version="1.0" encoding="UTF-16"?&rt;
<CustomWeightEntries xmlns="http://schemas.microsoft.com/2005/CustomWeight"&rt;
     <CustomWeightEntry Type="BODY" Change="-9" Text="important  client's name"/&rt;
     <CustomWeightEntry Type="BOTH" Change="MIN" Text="important subject or name"/&rt;
     <CustomWeightEntry Type="SUBJECT" Change="MAX" Text="spam offer"/&rt;
</CustomWeightEntries&rt;




To see, what actually SCL is assigned, add a custom form-field to MS Outlook, as described in this article.

Also, another good site about this.
It's probably possible to make Exchange IMF to add that SCL field to the message headers, so it could be viewed by a third party mail client.

Monday, September 17, 2012

Exchange's IMF and DNSBL

MS Exchange server has a feature which allows it to filter out spam email by asking special DNSBL services if the sender is not blacklisted.

Those services can be added via Exchange's GUI. In the version of 2003 it will be: "Exchange System Manager -> Global Settings -> Message Delivery -> Properties -> Connection Filtering". There's the list.

To know which server to add

In an email client open a spam email source code and/or look for the email's headers. Locate a "Received:" header line which contents the IP of the last SMTP node which sent this email to your server (usually it's one of the top header rows).

Open this site http://mxtoolbox.com/blacklists.aspx in a browser and enter that discovered IP from the headers in the query.

If the sender IP is listed on a DNSBL it knows, that will be shown.

Open the DNSBL web site and look for the DNSBL URI request suffix (can be tricky, but if the service is free it should be there somewhere).

For example, for the DNSBL service WPBL the URI will be db.wpbl.info

Using the Exchange GUI settings add this URI to the list.

Repeat  those steps some more times to add the most efficient DNSBL filters to the list

Good DNSBL servers are: PSBL (psbl.surriel.com), Barracuda (b.barracudacentral.org), Spamhous (zen.spamhaus.org), MailSpike (bl.mailspike.net), etc.

False positive

Beware, if a DNSBL server lists a ligit SMTP service. Try to do the steps above, using some valid email senders IP. If you found a server is listed on a DNSBL, exclude that DNSBL from adding to the Exchange list.

These two services often give false positive blocking: Backscatterer (ips.backscatterer.org), Sorbs (spam.dnsbl.sorbs.net)

How to made a request manually.

Say, we want to check, is a sender with this IP 173.232.2.221 is blacklisted using the DNSBL service WPBL.

First, create a PTR-like notation of the IP address, i.e. reverse all the numbers. In this case it will be 221.2.232.173

Add it to the DNSBL URI suffix. Together it will be
221.2.232.173.db.wpbl.info

Issue a DNS A request, like:
host 221.2.232.173.db.wpbl.info
If the IP is listed, the result will be like
221.2.232.173.db.wpbl.info has address 127.0.0.2

If it's not, the request will return an error.

Some DNSBL servers could also code different meanings in the returned fictional address (i.e. the last number in the returned IP address tells the story). Look in server's home site for descriptions and more info.


Thursday, September 13, 2012

Association of file extensions in the registry

HKCR\.ext  def. value refers to a HKCR\Appl.DocType
which could have key  CurVer which refers to Appl.DocType.version

In this case look for HKCR\Appl.DocType.version

To let the ShellExecute() system call find the associated executable when called with the document name, the following key should exist and be valid:
HKEY_CLASSES_ROOT\Appl.DocType[.version]\Shell\Open

XT

Spent a whole bunch of time trying to revive old DELL LATITUDE XT ultrabook.
Gosh, what a piece of crapy hardware...

The defected hard drive was replaces, but the memory test also showed an error. On the top of it, the performance is dramatically slowed down after the system temperature rises a little higher and never restores back to normal.

XT is the name, duh!

It has an Intel's CPU but AMD's chipset... Don't think that is a felicitous combination.

Monday, August 27, 2012

Expandos

How to work with custom HTML attributes, to be compatible with all modern browsers?
If you are using jQuery, it can be just done via a .attr() call, but
more correct way is name your custom attributes with prefix "data-" as the HTML5 standard suggest, like
<div data-attrib_name="attrib value">
Address it from the script as
$(elem).data("attrib_name")
and to put a new value:
$(elem).data("attrib_name","new value")

Saturday, August 18, 2012

Making room space

Why i didn't do that long ago? Tired fighting for a free space on the /data partition i just have moved the most huge .apk files to the /system/app folder and restarted the phone. Now I have whole 40Mb free on /data part. Silly amount for a modern device, but quite valuable for me.

Friday, August 10, 2012

PlayBook <-> PC

Wanted to copy a big amount of music to the PB... Easy task? Duh!
First thing, after I plugged it to the PC, it was found as a mass storage device. But it contained only drivers. Hm.. Fine, let's install them. The driver sees the device, but how to open it to transfer files? The USB file sharing is on... What's could be possible wrong? The message on the playbook suggest go and download the "BB Desktop manager". The size? 110Mb. OMG! But let's give it a try. I can always uninstall it, right? Now a huge crapware is installed and actually does nothing except showing me the error "Cannot connect to PlayBook...". Great!.. Ok, long story short, it turned out, I just can treat the PlayBook as a network device. Just go to the "My Network Places" and search the device there. If it fails, look for the USB IP address and type in it in the explorer address bar as a UNC name (i.e. \\169.256.224.209). Tune your windows firewall if it prevent the CIFS(SMB) from working. So, it seems the mass storage mode is not an option at all. Why???

Sunday, May 13, 2012

Sharing

Some collected facts about windows sharing.
  1. There are two modes: when the "Simple file sharing" (SFS) is ON or OFF.
  2. XP Home has only "simple" mode.
  3. On every else (including Windows 6.x Home ?) can be changed that in the Explorer's Tools->Folder Options->View->"Use simple file sharing".
  4. Also, the "Guest" account has to be enabled.
  5. When it's on all connected users are considered as "Guests" (It's not a name but status).
  6. To check the current mode, open the Computer Management->Shared folders->Sessions, or just by the command "net sessions"
  7. There is policy "Limit local account use of blank passwords to console logon only", when enabled (by default) an account with blank password is not allowed to access the window shared folders.
  8. jCIFS browses the network when the NtlmPasswordAuthentication is ANONYMOUS
  9. It accesses a "simple" share when no credentials specified as GUEST.
  10. So, the shared folders should have rights to the Guest account and/or for Everyone

Monday, March 26, 2012

windows passwords

to manage users and autologons in windows:
control userpasswords2

Friday, March 9, 2012

DTV

We decided to do some downshift and cancel the cable TV service.

Since Verizon did not include some good channels which could be picked up from the air, and everything else is available via the internet (using such services as hulu+ and Netflix), that's a pretty smart move.

To pick up broadcasted digital channels I bough this antenna (but much cheaper than on the manufacturer site).
Using this antenna I was able picked up a -56.8dBm station which is 44miles away from me (34dB noise margin, according the tvfool.com). Pretty impressive.
But to do that I had to hang the antenna to the wall on the second floor, close to the ceiling and mount it on the bracket which comes with the antenna. The result is not quite aesthetic, I say, because now I have that black spot on my white wall. It would be better if the antenna be sold in different colors to let the customer pick the right one. But we have what we have.
This antenna is not omnidirectional, so it provides a good pick up of weak stations from one direction and only strong signals which come from all around.

I bought also a DTV converter box to be used with my video recorder (PVR) running on a PC, since my TV already has an ATSC tuner. The functionality of this converter is much better than the TV provides, for instance, the box can show the scheduled programs short or with description, the TV can't do that. And the video quality is decent.
What is not exactly good - the box is pretty hot. Since I need it be turned on whole night to record some morning shows, I concern is it safe to left it unattended. I hope it won't break.
Minor wishes: Would be nice if it showed the clock when it turned off, and would be great, if it had a RS232 port to control it remotely from my PC.
One thing has disappointed me about this product. The description says it has a "learning" RC, but apparently, it's just a regular universal RC. Need to study the manual though.

Another question was, how to record the shows. I already had an old PC with Windows XP Media Center edition on it (unfortunately, I need Windows to play the Silverlight stream from Netflix), connected to the TV panel, which was used to watch the Netflix and other online streams. This PC has an analog TV tuner LeadTek WinFast TV2000XP which takes the video from the converter in fine quality. The software bundle includes a PVR with an ability to record show by timer. But the UI of the software is way not perfect, so I tried to find an alternative.
It turned out none of the PVR and HTPC software I tried worked with this card. Microsoft Media Center says there is no the tuner in the system at all (and a quick internet research says it won't work with a tuner without a hardware MPEG codec on it). All other,such as NextPVR
(very glitchy), Got-All-Media do not see the tuner as well.
It's very strange, because when this tuner was used in a Linux machine, all the TV software I tried (MythTV, etc.) worked very well.
I put the PC to the Standby mode (S3) and it wakes up on time by a special created windows schedule task with the option "Wake the computer to run the task". I wonder, will the PVR wake up the PC by itself? The manual says, it will. Need to test that.
Link

Wednesday, February 29, 2012

So, RIM made a gesture and sent me new BlackBerry PlayBook tablet for free. I really appreciate that, thank you, RIM.

Now, about the device. What's good:
1) It's well made. The display is superb, the case is sound.
2) It has 16Gb memory on it, no SD card slot though.

What's not so good:
1) It's pretty heavy. Bot since the case is covered with rubber plastic, there is no problem to keep it in hands.
2) Although it has on the most capacious battery in the class, it discharges very fast, even when the tablet just lays on the shelf doing nothing (and wifi is off). And there's no way to replace the battery.
3) It does not support regular android applications. Even if the application package is converted and signed, there's a high probability, the app will refuse to work properly. And I think it was a bad idea to let the recent application icons be shown in the android player after an android application has closed. It makes the android applications look like foreign pieces and not desirable when an user searches for an application in the AppWorld.

I wish RIM will review its vision and make the Android platform the primary, leaving the ability to run the AIR applications as well.

Wednesday, February 22, 2012

passing an array from vbscript to .net

.net < 4.0 does not support passing an array to its COM visible method by reference.

So, if there is a .net method in an object:
void f( object ary );

from VBscript it has to be called this way:

dim aa(1) : a(0)=1 : a(1)=2
obj.f( (aa) )

Note the extra parentheses around the array variable!