BitDefender has been my anti-virus for a few years now. I used to use Windows Defender before that, but it doesn't seem to have kept up, giving other manufacturers a chance. After reading many reviews and tests, I chose BitDefender as it seemed to have the best or near detection rate in multiple tests. I uninstalled it today. Here's why.
I've been using a utility called File Menu Tools (FMT) from Lopesoft for a long time, it's a Windows Explorer Context Menu that allows many file and folder operations within Windows Explorer without having to install a third party File Browser. One extremely useful feature it has is a file renamer tool that covers every scenario I need, including regular expressions. Today FMT requested an update. FMT doesn't update at all regularly, so I let it do it's thing. It seemed to make many calls and downloads which I thought a bit odd, but updates are rarely done as well as Chrome (completely silent and invisible to the user, which might have it's own disadvantages). BitDefender detected a virus and deleted it. Good, but a little upsetting that this little tool seems to have been the culprit. I semi-correctly guessed that FMT has decided to include advertising software along with it's update, but BitDefender took care of it. Unfortunately, it was worse.
I checked Task Manager and noticed a few new processes like bbqLeads and others. I'd been set up with a proxy and all my internet traffic was going through the proxy. I ran a scan with BitDefender which pickup NOTHING. I manually then hunted down the processes, and tried a few scans through VirusTotal, and hits were from ESET NOD32 every time and a few with TrendMicro-Housecall. After manually cleaning up the mess for about 2 hours, I uninstalled BitDefender and downloaded and installed ESET NOD32.
To make sure that ESET can live up to it's expectations, I went to the Lopesoft website and tried to download FMT. The big prominent download link was immediately blocked. I tried the mirror, which happens to be the actual download. The download started, but just before it completed, ESET warned me about a virus and blocked it. Awesome!
PC Magazine was one of the sources that highly recommends BitDefender, and I've had respect for them. They claim that ESET has poor malware blocking, but don't really mention BitDefender's blocking abilities. I don't know if this is a conspiracy or things have just changed since the publication. But, I'll just take their articles with a pinch of salt going forward.
It's really sad that software writers have to resort to this nasty habit of installing malware, often sneakily to make money. The Apple and Android app stores are great proof that charging reasonable prices can make you money. $1 - $5 is the sweet spot. When software costs about the price of a cup of coffee, it's a no-brainer. Mobile apps are no less complex than a windows or desktop app, the effort involved is comparable. There's no reason that you should try to charge more or tarnish your reputation by installing viruses with your software. Obviously, more complex and larger software should demand higher prices - but simpler and smaller ones that are obviously one-man jobs would greatly benefit from the mobile market model.
Tuesday, January 27, 2015
Monday, December 29, 2014
What went wrong with the Samsung Galaxy S5
The S5 is Samsung's mainstream flagship device. The one that's supposed to be the biggest competitor to the iPhone. It really didn't work out that way. Article after article show other Android devices, such as the LG G3 or HTC One M8 as better than the S5. Where did Samsung go wrong with the S5?
Apple's primary claim to fame is their user experience, not just the software, but the hardware as well. Their devices are nice to look at and nice to hold. It doesn't matter if they lack some features and doesn't matter that they might be delicate. The sheer covetousness that Apple's devices exude is what sells the devices. Samsung hasn't quite got that yet. It still has the stodgy Windows Mobile manufacturer mindset.
The S5 has probably more features than any other device on the market - finger print scanner (which the iPhone has), waterproofing, heart rate monitor (arguably gimmicky), wireless charging (requires a separate charging back), micro SD card slot, removable battery and more. From a sheer feature count it's an awesome device. It has an awesome screen with the best contrast ratio on the market.
But, it's not particularly beautiful. Comparing the iPhone, the HTC One and the G2, it's the ugliest. And it does not fit nicely in the hand, it simply not a pleasure to hold. The metal edge with it's ridges feels uncomfortable and looks ugly and dated. The physical home button, which looks like a blind copy of Apple's is an anachronism. Ugly and not pleasant to use. The finger print reader is not as easy to use as the iPhone's which simply requires a press to wake and unlock. The S5 needs to be switched on and then swiped. It needs two hands to unlock easily. The swipe is somewhat finicky and requires careful movement.
Samsung needs to lose the look it adopted with the S3 and continues with the S5, and come up with something fresh that's easy on the eyes and on the hand. It should lose the mechanical home button. It should replace the swipe fingerprint scanner with a static non-swipe one - maybe on the back, and have it usable one handed. It should lose it's idiotic, overbearing and much reviled TouchWiz and go with vanilla Android.
Apple's primary claim to fame is their user experience, not just the software, but the hardware as well. Their devices are nice to look at and nice to hold. It doesn't matter if they lack some features and doesn't matter that they might be delicate. The sheer covetousness that Apple's devices exude is what sells the devices. Samsung hasn't quite got that yet. It still has the stodgy Windows Mobile manufacturer mindset.
The S5 has probably more features than any other device on the market - finger print scanner (which the iPhone has), waterproofing, heart rate monitor (arguably gimmicky), wireless charging (requires a separate charging back), micro SD card slot, removable battery and more. From a sheer feature count it's an awesome device. It has an awesome screen with the best contrast ratio on the market.
But, it's not particularly beautiful. Comparing the iPhone, the HTC One and the G2, it's the ugliest. And it does not fit nicely in the hand, it simply not a pleasure to hold. The metal edge with it's ridges feels uncomfortable and looks ugly and dated. The physical home button, which looks like a blind copy of Apple's is an anachronism. Ugly and not pleasant to use. The finger print reader is not as easy to use as the iPhone's which simply requires a press to wake and unlock. The S5 needs to be switched on and then swiped. It needs two hands to unlock easily. The swipe is somewhat finicky and requires careful movement.
Samsung needs to lose the look it adopted with the S3 and continues with the S5, and come up with something fresh that's easy on the eyes and on the hand. It should lose the mechanical home button. It should replace the swipe fingerprint scanner with a static non-swipe one - maybe on the back, and have it usable one handed. It should lose it's idiotic, overbearing and much reviled TouchWiz and go with vanilla Android.
Thursday, December 4, 2014
nginx + uwsgi + web2py: 502 Bad Gateway Error
I started receiving this on one of 2 load balanced servers. Nginx's logs showed this:
upstream prematurely closed connection while reading response header from upstreamI tried restarting uwsgi:
restart uwsgi-emperorUwsgi restarted fine, but the problem still persisted. Uwsgi's log showed this:
Fatal Python error: Couldn't create autoTLSkey mappingThis was fixed by doubling the memory in the uwsgi config file (/etc/uwsgi/web2py.ini) from:
limit-as = 512 reload-on-as = 256 reload-on-rss = 192to
limit-as = 1024 reload-on-as = 512 reload-on-rss = 384and restarting uwsgi.
Saturday, August 23, 2014
Fix and Enable Pressure Sensitivity on Sony Flip 15/15A in Photoshop
Many have been disappointed with the lack of Pressure Sensitivity support for Photoshop 64-bit on this awesome laptop/tablet. There's a simple fix.
Create a file that contains instructions to use the RealTimeStylus functionality. To enable the RealTimeStylus functionality:
Create a text file in a text editor such as Notepad and type in the following lines:
Save the file as a plain text file named PSUserConfig.txt, and save the file into the Photoshop settings folder: C:\Users\[User Name]\AppData\Roaming\Adobe\Adobe Photoshop CC\Adobe Photoshop CC Settings\.
To turn off the RealTimeStylus functionality, delete the PSUSerConfig.txt file. Or, move it to a different folder if it doesn't contain any other commands, or change the lines so they read:
Credit to the Sony Community forum and user Keiran for the above.
The above only works with Photoshop CC and didn't work on CS6. For CS6, download and install the N-Trig drivers for the Surface Pro 3 from http://ntrig.com/Content.aspx?Page=Downloads_Drivers
Make sure Photoshop is not running when you do any of the above.
Create a file that contains instructions to use the RealTimeStylus functionality. To enable the RealTimeStylus functionality:
Create a text file in a text editor such as Notepad and type in the following lines:
# AllowRTS
uRTS 1
Save the file as a plain text file named PSUserConfig.txt, and save the file into the Photoshop settings folder: C:\Users\[User Name]\AppData\Roaming\Adobe\Adobe Photoshop CC\Adobe Photoshop CC Settings\.
To turn off the RealTimeStylus functionality, delete the PSUSerConfig.txt file. Or, move it to a different folder if it doesn't contain any other commands, or change the lines so they read:
# AllowRTS
uRTS 0
Credit to the Sony Community forum and user Keiran for the above.
The above only works with Photoshop CC and didn't work on CS6. For CS6, download and install the N-Trig drivers for the Surface Pro 3 from http://ntrig.com/Content.aspx?Page=Downloads_Drivers
Make sure Photoshop is not running when you do any of the above.
Wednesday, November 6, 2013
SSH from Windows to Linux without a password and without Putty
SSH into Linux from Windows is possible through the Cygwin SSH client, but logging in without a password can be a little tricky. It look me a little trial and error to get it working, so here are my steps:
Open a command prompt and login as root or another user with root privileges.
Create the user, if you haven't already and set the password (I'm using techn, change it to whatever username you want).
useradd techn passwd technGive this user root privileges for now. You can take them away later, if needed.
usermod -G root technCreate the .ssh directory for techn
mkdir /home/techn/.sshGive ownership of the .ssh directory to techn
chown techn:root .sshAssign permissions for this directory to techn
chmod 700 /home/techn/.sshExit the ssh session
exitFrom the windows command prompt, run ssh-keygen
ssh-keygenChoose the defaults, use a password if you want.
Now, the public key (id_rsa.pub) needs to be transferred to the linux server. If you were doing this from linux, you could use the ssh-copy-id script, but this doesn't work from the windows command prompt. So, we use this instead:
cat .ssh/id_rsa.pub | ssh techn@LINUX-HOST "cat >> ~/.ssh/authorized_keys"It should ask you for techn's password. Supply it and if you receive no error messages, you've succeeded in sending the public key to your linux host. This only works if you have root privileges, sudo doesn't seem to work here. Now you should be able to login without a password:
ssh techn@LINUX-HOSTThe following instructions only apply if you want to set up techn with sudo.
On the linux server, install sudo
apt-get install sudoLog out and log back in as root and remove techn from the root group and put them in the the sudo group
usermod -G sudo technCreate a text file called 'techn' in your home directory and paste this inside it:
techn ALL=(ALL) ALLSet the right permissions for this file
chmod 440 technMove the file to sudoers.d directory
mv techn /etc/sudoers.dDo NOT try create this file directly in the sudoers.d directory. You will run in to all kinds of trouble.
Wednesday, October 30, 2013
Simple Master-Slave Replication in MySQL
There's a lot of documentation to set up MySQL replication. The official MySQL documentation goes in to a lot of detail. It took me a while to get it running though. Here's a simple step by step guide for a very simple master-slave setup based on my experience. This was done Ubuntu 12. You might have to tweak the paths and shell commands for other Linux distros.
-
On both master and slave, allow remote access in /etc/mysql/my.cnf. Set
bind-address = 0.0.0.0
-
Configure the slave in my.cnf
server-id = 30 #unique id log-bin = /var/log/mysql/mysql-bin.log log-slave-updates replicate-same-server-id = 0 auto_increment_increment = 10 auto_increment_offset = 2 # unique offset report-host = let # slave host name
-
Restart mysql (shell)
restart mysql
or (depending on how mysql has been set up)service mysql.server restart
-
Create a slave user on the master (in mysql):
CREATE USER 'rep_slave'@'SLAVE IP ADDRESS' IDENTIFIED BY 'replication_password';
-
Allow replication for slave user (in mysql):
grant replication slave on *.* to 'rep_slave'@'SLAVE IP ADDRESS';
-
If data needs to be imported from the master, import it using mysqldump
-
On the Master MySQL get the Log File Name & Log Position (in mysql)
FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS;
-
On the slave (in mysql)
CHANGE MASTER TO MASTER_HOST='master_host_name/IP address', MASTER_USER='rep_slave', MASTER_PASSWORD='replication_password', MASTER_LOG_FILE='recorded_log_file_name', MASTER_LOG_POS=recorded_log_position; SHOW SLAVE STATUS \G START SLAVE
-
On the Master (in mysql)
UNLOCK TABLES
Tuesday, May 21, 2013
Pinout for Harman Kardon BT Bluetooth Headphones Charger Cable
I just got this headset and really love it. I'll probably lose the somewhat non-propriety charger cable, which uses a standard USB A connector on one end and a 2.5" 4-pin audio connector jack on the other. So, here's the pin diagram.
Subscribe to:
Posts (Atom)
