Using external XAMPP server in Aptana Studio 3

XAMPP is an awesome server package to start web development. It includes Apache, MySQL, PHP and much more. Today, I was in search of a nice IDE for the web development and I came across Aptana Studio 3. It is an IDE which is based on Eclipse and have a wide plugin support similar to Eclipse.

I started my work with Aptana with creating a new web project. I wrote few lines of code and now it was time to test it. I followed this article to get started. I did setup for the web server mentioned in the article.

External_Server_Configuration_Aptana_Studio

Also, I did the setup in run configuration to use the external server for preview. When I run the project, it failed to start the preview and threw following error:

External_Server_Error_Aptana_Studio

I looked into Google and in StackOverflow, but could not find a satisfactory answer which could resolve the issue. I even tried to setup external server with start and stop parameters and again no success.

However, tweaking some of the options in run configuration helped me to get up and running. I changed the ‘Start Action’ option to ‘Start URL’ and provided the initial URL to load the project. And after that it worked like a charm for me.
Aptana_Run_Configuration

It might not be the best way to setup the external server to use with Aptana. Still I hope it would help someone. If you hove come across this issue, I would be glad to hear your resolution for the issue.

Symica IC design toolkit: A promising tool to get started with Verilog-A

Few days back, I was in search of a free tool which could run my Verilog-A models. I was looking for different options and QUCS, ngspice were some of them. However, none of them were straight forward for compiling and simulating the Verilog-A models. Later, while visiting SemiWiki.com, I found this article, which lead me to an awesome toolkit which has a free version too.

The tool name is Symica IC design toolkit, available here. A free version of toolkit can be found here. As the table shows in the page, the free version allows user to perform a SPICE simulation of a circuit with up to 300 nodes. In addition, the free version supports Verilog-A simulations. The tool was very easy to use and is similar to Cadence Virtuoso product. The tools is available for download for Windows and Linux platforms.

As my major reason for my search was a free tool for simulating Verilog-A, so I went straight to my objective. Creating a new library and adding different Cell views was very simple and straight forward.

SymicaDE Window

I created a voltage amplifier for my test case, saved it and created a symbol view for my Verilog-A model. Then I moved to create my testbench schematic. All this is a very smooth experience if you are familiar with the Cadence Virtuoso environment.

SymicaDE Simulation Window

Next task was to setup the simulation and run it. Selecting the waveforms to plot was similar as found in ADE tool from Cadence. The tool compiles the Verilog-A model using the ADMS, which is a FOSS project. ADMS converts the Verilog-A model into simulator dependent C code which can be compiled as a model for the simulator. Although, ngspice and QUCH also use the same interface, they do not allow the model compilation in run time. This tool was very smooth in its job and successfully compiled the model and presented the simulation results.

SymicaDE_Result_Window

The result window appears as soon as the simulation is completed. It has markers which works in a similar was as PSpice markers. It has plenty of measurement functions, support for eye diagrams and histograms etc.

SymicaDE Measurement Functions

Overall, in my view, it was an easy to use tool, which I can continue to use for simulating my Verilog-A models. If you have used this tool, let me know your experience here in comments.

Remove the Trojan.PWS.Legmir.AD / W32.Ahlem.A@mm virus from your PC

Today morning, as I turned my Win7 laptop on, Window Notification Centre showed me a scary notification which is same as the title of this post. So, I was infected. As a next obvious step I turned my antivirus on and it didn’t find anything similar. Crap. Now it was time to get furious.

 actioncentremsg

When I clicked on View All Problems it applies to, below is the result which I got.

allproblems

Wow! These are my C programs, which I compiled few days back using gcc and forgot to specify the output file name. Additionally these programs were having few errors and one of them was having an infinite loop. So Windows got suspicious about them and reported them as security threat.

So what made Windows to report it as security threat? Upon searching, I found something interesting on Symantec website:

W32.Ahlem.A@mm is a mass-mailing worm that is written in the Visual Basic (VB) language. The worm has been packed using the UPX run-time compression utility.
When the worm is executed, it attempts to email all the contacts in the Windows Address Book. The email will have the following characteristics:
Subject: Alert! SARS Is being Spread.
Attachment: a.exe

I think the a.exe as attachment might be the reason for Windows to reports it as a Trojan. I just deleted those files though there were not a threat for me. As conclusion, I would say, if you face this issue and you use gcc for your compilation work, do not panic and look if the files belong to gcc output. However, I will always recommend to use updated antivirus product to save you against the threats.

Have you ever faced it? What was your reaction?

Screenshot (Print Screen) is not working in Linux Mint 14

When I finished my work on getting my wi-fi card up and running in my brand new installation of Linux Mint 14, I thought of putting down in this article. In the process, I tried to take screenshot for few windows. To my surprise nothing happened when I pressed <Prnt Scrn> key. I looked into Google for existence of any such know issue and yes it was already there since Linux Mint 13. I found a discussion on Linux Mint forums. After reading the posts, it turned out that <PrntScrn> key press was taking the screenshots and saving them to Pictures directory in user area. Wow!

Wait! I could not find even a single screenshot saved in Pictures folder in my directory. Looking further in the forum, I found that the Linux Mint uses the gnome-screenshot for capturing the screenshot. But when I invoked the tool from the terminal, to my surprise, it was not installed in the default installation. Why? I don’t know.

So I installed the gnome-screenshot using

sudo apt-get install gnome-screenshot

After the installation, I again tried the <PrntScrn> and this time there were the screenshots saved in my Pictures directory.

This automatic behavior can be changed to the interactive mode capture as present in Ubuntu by following steps:

1. Go to System Settings from the main menu and select Keyboard.

 System Settings Window

Fig: System Settings Window

2. In Keyboard setting window, select the Shortcuts tab. Click on Custom Shortcuts and click on + sign. Enter the name as Screenshot or anything you like. In the command box type following:

For Interactive mode:

gnome-screenshot --interactive

For Copying to clipboard:

gnome-screenshot –clipboard

Refer the image below:

Keyboard Setting Window

Fig: Keyboard Setting Window

Once done, click Apply and close the window.

This will bind the PrntScrn key to behavior you are comfortable with. Comment below if you face any issue or ask a question in QA.

Wifi not working in Linux Mint 14

I am a long time Ubuntu user. Today, I thought of giving a try to Linux Mint. I installed it and as per my expectation wi-fi was not working with out of box installation. I tried few of the options, which I am sharing here to be useful for someone else.

Since I came from Ubuntu, I looked into System Settings from the main menu and looked for Software Sources.

Menu in Linux Mint
Fig:Menu in Linux Mint

System Settings Window

Fig: System Settings Window

In Software Source, switch to the Additional Drivers tab. Select “Using Broadcom 802.11Linux….” option in the tab. Click Apply Changes and close the window. Ideally it should load the required proprietary drivers for WLAN card.

Software Sources Window

Fig: Software Sources Window

But, it didn’t work for me. So, next I moved to Google for searching an existing solution to my problem and found a discussion on this forum and this page. This link is of our relevance since Linux Mint 14 is based on Ubuntu 12.10. I tried the options available in answer section one by one in the given order.

I am putting the given options here again:

You can fix wifi problems using two methods:

1. Either connect to the internet via wired connection and run this command:

sudo apt-get update && sudo apt-get upgrade

Then reboot your system.

2. Or use the following commands:

sudo apt-get install linux linux-headers-generic kernel-package
sudo apt-get install --reinstall bcmwl* firmware-b43-lpphy-installer b43-fwcutter

Finally, reboot your system.

If that didn’t help, try these commands:

sudo apt-get remove bcmwl-kernel-source
sudo apt-get install firmware-b43-installer b43-fwcutter
sudo reboot

For me, the last option worked. Now, I am publishing this post using my wi-fi connection. Please comment, which one worked for you?

ModSecurity and CodeColorer WordPress plugin conflict

Few days back I got into strange trouble. I was not able to edit and update any of my post on this site which is a WordPress powered site. I tried several things and finally filed a ticket with my hosting provider. Based on their reply, it was a ModSecurity issue. My permalink settings were messing up their ModSecurity settings. I asked for the log files to check what was actual cause for the conflict. To my surprise I found that my code colorer plugin tags were causing the conflicts. I was using “cc” based tag system. Seems like it don’t like the cc part. So I decided to drop it and resort back to <code> and </code> based tags. Did anybody else have faced a similar issue?

To go back to <code> based tags, I had to do it on many of the posts. To ease out the task I wrote a small Perl script, which takes the file with old tags as input and generates the file with new tags(<code>. Hope you find it useful, if you get into the similar issue.

#!perl -w

use strict;
use warnings;

print "Converting";

open(INPUT, "input.txt");
open(OUTPUT, ">output.txt");

while(<INPUT>) {
    s/\[cci(.*?)\]/<code inline="true" $1>/gi;
    s/\[cc(.*?)\]/<code $1>/gi;
    s/\[\/cc\]/<\/code>/gi;
    s/\[\/cci\]/<\/code>/gi;
   
    print OUTPUT
}

Please let me know if you have faced some similar issue?

Show Desktop Notification for all mails in Outlook

Problem:

I am an Outlook user with highly organized mailbox ;-). I use a lot of rules to manage my mails in different folders. But when a new mail arrives to my mail box, Outlook displays the Desktop notification only for the mails which come to my Inbox folder. All other mails creep in silently to their ruled out folders. Really frustrating sometimes, when it is critical to reply on time. So I want to enable Desktop notification for all mails.

Continue reading

Enhance your science with Scilab

Today I am writing about a free and open source software which is very efficient in calculation and data processing. Scilab is cross platform numerical computing package. It is available in Windows and Linux both. You can use it as open source alternative to MATLAB. If you are a student then you will find it more useful as dont have to spend any bucks for getting the software. This software is having syntax familiar to MATLAB. So iff you are familiar to MATLAB syntax you can easily work with Scilab and if you are not well familiar then this article is for you.

Continue reading

Starting with Microcontrollers

A long time after starting of blog, finally I am writing a startup article on microcontrollers. Actually like every other category, the first one is very basic and introductory in nature. The intention of this article is to introduce to microcontrollers. It goes into history of the device, it shows you the applications of the device and it shows a course to learn to operate microcontrollers.

Microcontroller is a Integrated Circuit which have a CPU, RAM, I/O Buffers, UART etc. A microcontroller is a small computer, which has inbuilt memory, input output and many other devices. It is mainly used to design embedded system, unlike to microprocessor, which is used in Personnel computers or general purpose computers.

Why do you need microcontrollers?

Continue reading

Control Statements in Scilab

In my last introductory article to Scilab we have discussed very basic commands. We won?t discuss the commands further as we will discuss the required commands as we will come across them. In this article we will discuss the control statements of Scilab.

Control statements are very essential part of any language. Is Scilab a language? Yes, you can consider as a scripting language for your numerical tasks. So as a language it is also  having control statements.

Continue reading