Friday, 20 February 2015

5 Tips To Become Better JavaScript Developer!

JavaScript is still a mystery to a lot of people. With it’s growing popularity with things like Node.js, Angular.js, and jQuery, people are wanting to know more and more about the language

With more beginners jumping in, there’s room to make mistakes that JavaScript will more than willing let you do. Right now, JavaScript is being bombarded with new frameworks and libraries that completely change our regular workflow. In this article we have listed 5 simple and quick JavaScript tips that will help beginners improve their code quality.

1.Work on API for security

Beginners often think that hiding elements from user using JavaScript is security but you should rather focus on your lack of obedience, that will make you a better coder. It’s always best to work with API layer so it will help you put up real security walls. API checks everything that passes through it. So API can prevent access to the unauthenticated call.

API should strictly not produce any information that user doesn't have the permission to access. It is best to build your own API with multiple layers of protection. JavaScript doesn't automatically hide and mask things.

2.Use Strict mode while writing the code

Strict mode was introduced in ECMA 5. It allows you to put a function or an entire script into strict operating context. It eliminates some of the silent JavaScript errors by throwing the errors explicitly. It is capable to throw exceptions when relatively unsafe actions take place. And sometimes strict mode code can run faster than non strict mode code. As currently all the major browsers support this feature you should start using strict mode.

3.Write easy to understand code

You must not write a confusing code, it will just make things worse. You should avoid the shortcuts while writing the code. A function like ShoeBox(); can be represented as ShBx(); but, that is not easy to understand. It is necessary to write the code as if you are writing the story in normal language. This approach really helps while debugging and beta testing.

Beginners often focus on number of lines and speed of coding. But to be fair, in the end, whether the app works flawlessly or it is buggy is all that matters. Number of lines of codes and efficiency of the app, both things are totally irrelevant.

4. Cache the length while looping

Beginners often forget this while writing a code and then end up debugging the thousands of lines of codes. While looping through a JavaScript array you can cache the length so that the overall performance is better. Be careful while creating an inner loop. You need to name the length variable differently in the inner one.

5.Test

To improve your confidence that code will behave as expected, write unit tests using a framework such as Jasmine or QUnit for each of your functions, using both expected and unexpected input parameters.

Run these tests in multiple browsers across multiple operating systems. if your code is stored in GitHub, you can take advantage of BrowserSwarm, a tool that automatically runs your unit tests when you commit your code

Wednesday, 14 January 2015

VMware Workstation 11.0.0 Build 2305329

Requirements:           Windows XP / 2003 / Vista / Windows 7 /                                                                Windows 8         

           VMware Workstation is one of the most popular and widely used applications for running and managing virtual operating systems via remote connections. By offering broad operating system support, industry leading feature set, high performance tools, and rich user experience, VMware Workstation represents the perfect companion for serious PC enthusiasts, technical professionals and businesses who wants to have access to the best possible tools in the world.

By using VMware Workstation and its many included tools such as totally free to use VMware Player, you will have complete control over your remote operating systems and virtual machines that provide full access their storage devices, USB drives and access their local network connections. Interface of VMware Workstation is very much streamlined in the way of the other apps that were made by VMware since their formation in 1998 and development over the next years (VMware Server, VMware Player and others).  Novice users will be happy that this app is fully streamlined to be used by them, with main dashboard promoting easy to use shortcuts to most popular tools such as “Create new Virtual Machine”, “Open a Virtual Machine”, “Connect to a Remote Server”, “Virtualize a Physical Machine”, “Virtual Network Editor” and “Workstation Preferences”.

The full version VMware Workstation even gives you the opportunity to connect and completely control virtual machines that were created with other programs (Microsoft, Workstation, ESX Server, GSX, etc.). If you are person who likes to run virtual machines that execute Microsoft Windows, Linux or BSD, then  VMware Workstation is the perfect hypervisor program for you.

What’s New in Workstation?

Best in Class Windows 8 Support

To help you and your organization evaluate Windows 8, master the Metro UI and test your applications, VMware Workstation 9 is optimized for running Windows 8 virtual machines and running on Windows 8 PCs. Easy Install simplifies the task of creating Windows 8 virtual machines, Unity mode will intelligently scale windows with Metro applications and multi-touch support will ensure you get the true Windows 8 experience in a virtual machine.

Set It and Send It

Create virtual machines that are encrypted, block USB devices, require a runtime password, and another password to change virtual machine settings. Once set, send the virtual machine to anyone to run on their Mac, Windows, or Linux machines by using VMware Fusion Professional.

Better 3D Graphics

With faster 3D graphics and support for DirectX 9.0c Shader Model 3 and OpenGL 2.1 3D graphics in a Windows and now Linux virtual machine, VMware Workstation easily handles demanding 3D applications like AutoCAD, Solidworks, and many current games.

From PC to Datacenter and Back Again

In Workstation 8 we introduced the ability to upload a virtual machine from your PC to vSphere. Workstation 9 takes the next step and allows you to drag and drop a virtual machine from vSphere to your PC. It’s the easiest way to move virtual machines between your PC and your internal cloud.

Download it here for free.

Note: 30 day trial version.

But if you are visiting my blog then congrats you have got it for free.............
Here are the keys:

CV512-FAW91-085NP-DMXQX-QLHAF
AA7DU-APW15-H848Q-P5ZGZ-PCRC2
VU1N2-6DE5N-M8DLQ-AEMEV-XA2Z4
UV3NR-AMZ17-08EZP-9YQQE-MZAY8
GC75U-21E50-M8D5Q-K6YQX-W28V8

Follow me on google+

Friday, 9 January 2015

Eclipse, NetBeans or IntelliJ: Which is the best Java IDE?

Eclipse’s Luna release brought a range of
interesting new functions –– but how does
the Java IDE stand up to rivals NetBeans
and IntelliJ?
..

For quite some time now, Eclipse has had a thorn in its IDE.
With NetBeans and IntelliJ ever at its heels, the Eclipse
development environment has been battling to hold sway
over the Java community. It’s about time we compared the
big three in Java IDEs.

Over on JAXenter.de , the German Java community has voted
on how Eclipse stands up against the competition. Only 21%
of developers believed the Luna release has re-established
Eclipse as the best Java IDE in the world. And just over a
quarter of participants (26%) would say that Eclipse and its
competitors are generally the same, and that each software
has its own advantages and disadvantages.
Like in the Windows vs Mac vs Linux debate, it seems that
most devs have picked one IDE and are sticking firmly to it.
The results make it pretty clear that Eclipse’s Luna hasn’t
quite won back the entire Java community.

Eclipse: More than an IDE

While IntelliJ IDEA had already long since delivered support
for Java 8 (albeit slightly rudimentary), Eclipse struggled to
catch up with Java 8 support for its much-awaited Luna
release . On top of its new Java 8 features, Luna blinged out
with a brand new ‘Dark Theme’ which lets users change the
IDE’s background hue – but that’s also nothing that would
impress anyone working with NetBeans and IntelliJ IDEA.
The latest update has brought Eclipse up to an impressive
76 individual projects – from software modelling to IoT tools
and even runtime projects. Beating that in mind, you might
say Eclipse is less of an IDE and more of a technology
platform and open source community.
Being slow off the mark to adopt Java 8 functions is
relatively insignificant when compared with rough times
Eclipse had with the infamous Juno release and its frustrated
users. In spite of these troubles, Eclipse makes up for its
vices with a vibrant community of developers and a wide
range of plugins.

IntelliJ IDEA and NetBeans

In contrast to Eclipse, there’s no doubt about what exactly
IntelliJ IDEA does. Since it’s developed by one single
company (JetBrains), there’s somewhat less community
participation. But that also means that its built-in features
are far more cohesive. Eclipse can easily become confusing
with its endless plugins built by various community
members. IntelliJ IDEA could add a further feather to its cap
when Google selected it as the basis for Android Studio – the
new development environment for Android.

Right in middle, between Eclipse and IntelliJ IDEA, is
NetBeans. Previously part of the Sun development
environment, NetBeans slipped into the hands of Oracle, but
has managed to hold onto its faithful community. NetBeans
features platform functions for various extensions, and yet it
still provides a clearly framed functionality. The software
also has a head start on other IDEs with its JavaFX and
HTML5 features.

Each to their own IDE
When it comes to Java IDEs, developers are spoiled for
choice. Three free services battling each other to provide the
best functions and services – it’s something that other tech
communities can only dream of.
Like ninjas vs pirates, deciding on the world’s best Java IDE
is purely subjective – it all depends on what you need. A
swashbuckling, if sometimes chaotic, collection of plugins or
a stealthily integrated functionality?

Saturday, 3 January 2015

C++ decleration of a two pass Assembler

#include<stdio.h>
#include<string.h>
#include<conio.h>
void chk_label();
void chk_opcode();
void READ_LINE();
struct optab
{
char code[10],objcode[10];
}myoptab[3]={
{ "LDA" , "00" },
{ "JMP" , "01" },
{ "STA" , "02" }
};
struct symtab{
char symbol[10];
int addr;
}mysymtab[10];
int startaddr,locctr,symcount=0,length;
char line[20],label[8],opcode[8],operand
[8],programname[10];
/*ASSEMBLER PASS 1 */
void PASS1()
{
FILE
*input,*inter;
input= fopen
( "input.txt" , "r" );
inter= fopen ( "inter.txt" , "w" );
printf( "LOCATION LABEL\tOPERAND\tOPCODE
\n" );
printf
( "_____________________________________" );
fgets(line,20,input);
READ_LINE();
if (! strcmp(opcode, "START" ))
{
startaddr= atoi (operand);
locctr=startaddr;
strcpy(programname,label);
fprintf(inter, "%s" ,line);
fgets (line,20,input);
}
else
{
programname[0]= '\0' ;
startaddr=0;
locctr=0;
}
printf ( "\n %d\t %s\t%s\t
%s" ,locctr,label,opcode,operand);
while ( strcmp(line, "END" )!=0)
{
READ_LINE();
printf( "\n %d\t %s \t%s\t
%s" ,locctr,label,opcode,operand);
if (label[0]!= '\0' )chk_label
();
chk_opcode();
fprintf(inter, "%s %s %s
\n" ,label,opcode,operand);
fgets (line,20,input);
}
printf( "\n %d\t\t
%s" ,locctr,line);
fprintf(inter, "%s" ,line);
fclose (inter);
fclose (input);
}
/*Assesmbler pass 2 */
void PASS2()
{
FILE *inter,*output;
char record[30],part[8],value[5]; /*Part
array was defined as part[6] previously*/
int
currtxtlen=0,foundopcode,foundoperand,chk,operandaddr,recaddr=0;
inter= fopen ( "inter.txt" , "r" );
output= fopen( "output.txt" , "w" );
fgets(line,20,inter);
READ_LINE();
if (! strcmp(opcode, "START" )) fgets
(line,20,inter);
printf( "\n\nCorresponding Object code
is..\n" );
printf( "\nH^ %s ^ %d ^ %d
" ,programname,startaddr,length);
fprintf(output, "\nH^ %s ^ %d ^ %d
" ,programname,startaddr,length);
recaddr=startaddr; record[0]= '\0' ;
while( strcmp(line, "END" )!=0)
{
operandaddr=foundoperand=foundopcode=0;
value[0]=part[0]= '\0' ;
READ_LINE();
for (chk=0;chk<3;chk++)
{
if (! strcmp (opcode,myoptab
[chk].code))
{
foundopcode=1;
strcpy(part,myoptab
[chk].objcode);
if (operand[0]!= '\0' )
{
for (chk=0;chk<symcount;chk++)
if (! strcmp(mysymtab
[chk].symbol,operand))
{
itoa(mysymtab
[chk].addr,value,10);
strcat(part,value);
foundoperand=1;
}
if (!foundoperand) strcat
(part, "err" );
}
}
}
if (!foundopcode)
{
if ( strcmp(opcode, "BYTE" )==0 ||
strcmp(opcode, "WORD" )|| strcmp
(opcode, "RESB" ))
{
strcat(part,operand);
}
}
if ((currtxtlen+ strlen (part))<=8)
/*This step was having buffer overflow issue
since part[6]
was defined previously which i corrected to
part[8].
Because of this first two bytes of stack are
getting lost*/
{
strcat(record, "^" );
strcat(record,part);
currtxtlen+= strlen(part);
}
else
{
printf ( "\nT^ %d ^%d
%s" ,recaddr,currtxtlen,record);
fprintf(output, "\nT^ %d ^%d
%s" ,recaddr,currtxtlen,record);
recaddr+=currtxtlen;
currtxtlen= strlen (part);
strcpy (record,part);
}
fgets (line,20,inter);
}
printf( "\nT^ %d ^%d
%s" ,recaddr,currtxtlen,record);
fprintf(output, "\nT^ %d ^%d
%s" ,recaddr,currtxtlen,record);
printf( "\nE^ %d\n" ,startaddr);
fprintf(output, "\nE^ %d\n" ,startaddr);
fclose(inter);
fclose(output);
}
void READ_LINE()
{
char buff[8],word1[8],word2[8],word3[8];
int i,j=0,count=0;
label[0]=opcode[0]=operand
[0]=word1[0]=word2[0]=word3[0]= '\0' ;
for (i=0;line[i]!= '\0' ;i++)
{
if (line[i]!= ' ' )
buff[j++]=line[i];
else
{
buff[j]= '\0' ;
strcpy(word3,word2);
strcpy(word2,word1);
strcpy(word1,buff);
j=0;
count++;
}
}
buff[j-1]= '\0' ;
strcpy(word3,word2);
strcpy(word2,word1);
strcpy(word1,buff);
switch(count)
{
case 0: strcpy (opcode,word1);
break ;
case 1:{ strcpy (opcode,word2); strcpy
(operand,word1);}
break ;
case 2:{ strcpy (label,word3); strcpy
(opcode,word2); strcpy(operand,word1);}
break ;
}
}
void chk_label()
{
int k,dupsym=0;
for (k=0;k<symcount;k++)
if (! strcmp(label,mysymtab[k].symbol))
{
mysymtab[k].addr=-1;
dupsym=1;
break ;
}
if (!dupsym)
{
strcpy (mysymtab
[symcount].symbol,label);
mysymtab[symcount++].addr=locctr;
}
}
void chk_opcode()
{
int k=0,found=0;
for (k=0;k<3;k++)
if (! strcmp(opcode,myoptab[k].code))
{
locctr+=3;
found=1;
break ;
}
if (!found)
{
if (! strcmp( opcode, "WORD" )) locctr
+=3;
else if (! strcmp
(opcode, "RESW" ))locctr+=(3* atoi (operand));
else if (! strcmp
(opcode, "RESB" ))locctr+= atoi (operand);
}
}
int main()
{
PASS1();
length=locctr-startaddr;
PASS2();
getch();
}

Friday, 18 April 2014

ACCESS BLOCKED SITES

ACCESS BLOCKED SITES

It has been a long time ago that in colleges ,schools ,universities and offices that some websites are being blocked for use due to some security issues or because of pornography and social network over crowd.
Now the time had risen up to come over these limitations by some software's or by some tricks.
So that one can easily access the sites whenever he wants and whatever he want to browse or download too.

There are many methods available in tech world by which one can browse the blocked sites .

  1. SOFTWARES
    Many softwares are available in third party software distributors market by which blocked sites can be accessed easily in which some main softwares are BLOCKED SITE ACCESSOR  ,HOTSPOT SHIELD,HOLA.
  2. EXTENSIONS
    Many extensions do the same job and some known ones are STEALTHY ,FOX PROXY,FRIGATE .These extensions need to be installed on your browser i had my self checked them to work in GOOGLE CHROME.
  3. MANUAL PROXY CHANGE
    Browse the GOOGLE and see a list of proxies of different countries ,note them down and write them accordingly in your browser proxy settings.Restart your browser and you are done with your proxy change and access your favorite sites.

NOW USE ANY OF THE ABOVE METHODS AND YOU CAN EASILY BROWSE THE BLOCKED SITES IN YOUR INSTITUTION .

I MYSELF PREFER TO USE THE SOFTWARE ONE AND THE EXTENSION ONE BECAUSE IN A SINGLE CLICK OR A KEYBOARD SHORTCUT YOU CAN CLOSE OR OPEN THEM WHEN YOU DON'T NEED THEM TO WORK AS YOU WILL BE EITHER IN HOME OR YOU WANT TO BROWSE THE SITES THAT ARE NOT BLOCKED AT ALL.