Next
Previous

Tuesday, September 16, 2014

How to use Subversion with Visual Studio

Posted in , ,


In this article we're going to talk about how to use Subversion with Visual Studio. In this article I'm going to use TortoiseSVN as the SVN Client, Slik SVN as the SVN Server and Visual Studio 2012.

Why do we need Version Control ?
Can you remember the last time you had to work on one file with several people? Remember how you had to reverse engineer an undocumented bug? Remember how software projects go berserk when planned ungracefully? It happens a lot. Unless you use version control.

You have to download following tools in order to use Subversion with Visual Studio.

Slik SVN
Slik is a full service internet company. They build web software and manage online services. They run their own network and manage their local internet registry (LIR) as well as their domain names. That means Slik has pretty much all it takes to run stable online environments and manage version control software.


You can create your SVN account from HERE for FREE

TortoiseSVN
It's intuitive and easy to use, since it doesn't require the Subversion command line client to run. And it is free to use.


You can download TortoiseSVN Client from HERE for FREE

VisualSVN
VisualSVN is a professional grade Subversion integration plug-in for Visual Studio.


You can download VisualSVN Client from HERE for FREE

Installation and Integration
Install TortoiseSVN and VisualSVN respectively. If you are installed them correctly you can see the VisualSVN Extension in the Visual Studio's Extension manager window like this..


Adding the project to your Repository
First create a directory on your hard drive (This is your repository directory). Then you need to checkout the SVN repository into the directory that you've created. You can do it by right clicking on that directory and selecting the SVN Checkout... like this


Then you have to enter your repository path in the next window


Then click ok button to proceed. Then sometime you will get a window asking for username & password. Give the username & password that you've given in the Slik SVN account creation process. Make sure to tick the save password. And you might get this window about 4-5 times continuously. Please provide the username & password correctly each and every time.

Then the TortoiseSVN client will checkout the files in the repository.


Now copy your project in to your repository directory and commit the changes by right clicking and selecting the SVN Commit... Then your project will successfully uploaded to your SVN repository.


Updating your project
After opening the project from Visual Studio, you can do this by right clicking on the project in the Solution Explorer and Selecting Update..


Committing your project
You can do this by right clicking on the items with changes which are highlighted in the yellow color in the Solution Explorer and Selecting Commit..


That's all for today.. Happy coding..!!
If you gain some knowledge from this lesson and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!

How to use ASP.NET Button inside a jQuery Dialog box ?

Posted in , , ,


This is a problem which most of the Developers face who works with the ASP.NET and jQuery..

Lets assume that you have a jQuery Dialog box in your ASP.NET application which contains a ASP.NET Button. Sometimes you may experienced this kind of problem when you're try to run the page after writing all the codes.. Your jQuery Dialog box will appear without any problem. But when you are try to click on that ASP.NET Button you will realize that nothing will happen even you wrote the code for OnClick event. But it will work if you set Button's UseSubmitBehavior="false".

Problem solved ?
Actually No. Now the OnClick event will fire when you click on the button. But actually the problem is,
Assume that you have another ASP.NET Control inside the jQuery Dialog. Lets say a ASP.NET TextBox.

Here is the JavaScript code that invokes the jQuery Dialog and It's output :
//Display JQuery Dialog 
function showDialog(i) {

    $("#addReleaseDialog").dialog({
        draggable: true,
        resizable: false,
        width: 300,
        height: 410,
        minHeight: 10,
        minwidth: 10
    });

    return false;

}

Now your will need to use that TextBox's Text inside the Button's OnClick event. Will it work ? NO. It will return NULL value each and every time when you try access the Text of that TextBox. How can we solve this ?

The good thing is it's a simple fix. Here is the fixed code..
//Display JQuery Dialog 
function showDialog(i) {

    $("#addReleaseDialog").dialog({
        draggable: true,
        resizable: false,
        width: 300,
        height: 410,
        minHeight: 10,
        minwidth: 10
    });
    $("#viewReleaseDialog").parent().appendTo($("form:first"));
    return false;

}

What is the Reason ?
For the .Net postbacks to work, the JQuery dialog has to be added to the form. I believe it is separated so that JQuery dialog can control/lock the UI, handling custom buttons and preventing users from submitting other buttons (I may have this wrong, as it still successfully blocks the UI). Anyway, some internals of this system separates the form data and thus prevents .Net postbacks. Even forcing a postback by using 'UseSubmitBehavior=False' still prevents data being passed to the back end as it exists outside the .Net Form

That's all for today.. Happy coding..!!
If you gain some knowledge from this lesson and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!

Working in a Agile Team

Posted in , ,


Doing a project with huge scope with fewer members was actually a huge challenge to us. The factor that affects the project most is associated with the group i.e. human resources. It is very important to have an idea about working in an agile group before doing a project in that methodology.

Through face to face communication, Small Agile teams can best understand and discuss your requirements. Empowered teams will figure out the best way to get things done, boosting productivity while spreading knowledge. Team collaboration reinforces best practices and makes it easier to introduce new tools and development techniques.

I would like to tell you some points we should consider when working in an Agile group:

  1. ►Communication between team members should be as maximum as possible. It is very important to share the ideas among team members.
  2. ►Team should specialize in all aspects of a software engineering project. In short,everyone should know everything.
  3. ►No one should depend on each other on an entire aspect of the project. For an example, we cannot depend on a single team member for testing. Everyone should do everything.
  4. ►Use a code repository. It saves a lot of time. You don't have to waste your time trying to integrate members' modules. Take a look at this article for more details.
Do’s and Don’ts when working in a group

Do’s
► Always take time to understand the qualities and abilities of the team members and assign work to them based on that.

► Always plan the work and strategies beforehand and constantly check that they are in progress.

► Schedule group meetings so that the progress and any problems can be identified.

► Always respect the views of others and involve everyone in the decision making.

► Make sure that you make and effort to enhance the quality of the project and not let the group down at any instance.

Don’ts
► Do not try to resolve any disagreement by fighting. Talk it out quietly and in private.

► Do not assign a responsibility to someone who has a weakness or lacks understanding in a certain area.

► Never complain on having to do group work as one day in the industry we would have to and then if u succeed in these type of projects working is not going to be a big challenge for you

► Do not worry or try to compete with other groups. Just do your work as planned.

That's all for today.. Happy coding..!!
If you gain some knowledge from this lesson and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!

Wednesday, July 10, 2013

3 - Creating & Deleting a directory

Posted in ,


Today lets talk about creating and deleting directories.

mkdir - create a new directory.

command syntax

mkdir [option] directory

directory - give the name of the directory you wish to create.

options used with mkdir

-m mode - Set permission mode (as in chmod), not rwxrwxrwx - umask.
-p - No error if existing, make parent directories as needed.
-v - Print a message for each created directory
-Z - (SELinux) set security context to CONTEXT

ex :


creates a directory named "dirName"




"dirName" named directory has been created.

ex :


This example use the -m option to set the permissions to all users having read, write, and execute permissions.
Shows the permission of "dirName" directory

changing permission through GUI


chmod command is used to change the permission of a file through CLI. In the future lets talk about chmod.

r - Read the file.
w - Write or edit the file.
x - Execute or run the file as a program.

rmdir - Remove directory(s)

command syntax

rmdir [option] directory

directory - give the name of the directory you wish to delete.

options used with rmdir

--ignore-fail-on-non-empty - ignore each failure that is solely because a directory is non-empty.
-p, --parents - Remove DIRECTORY and its ancestors. E.g., `rmdir -p a/b/c' is similar to `rmdir a/b/c a/b a'.
-v, --verbose - output a diagnostic for every directory processed.
--version - output version information and exit.

ex :


delete "dirName" directory.




"dirName" directoty has been deleted.

If there were files inside "dirName" directory "rmdir dirName" command wont allow us to delete that directory.



Therefore to remove a directory, even if files existed within that directory use
rm -rf directory/

ex :


If you gain some knowledge from this lesson and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!

Thursday, July 4, 2013

Fedora 19 (Schrödinger's Cat) Released

Posted in ,


Fedora 19 "Schrödinger's Cat" has been released today, featuring the latest stable GNOME 3.8, a new initial setup and other interesting changes.

New initial setup

The latest Fedora 19 includes a new initial setup (which was supposed to be introduced with Fedora 18, but was delayed) which allows users to perform some basic actions the first time they boot into Fedora. Users can select the language, keyboard layout, add cloud services and, if no user has been created during the installation process, a new user can easily be created from this initial setup:




After the initial setup completes, an animation displaying some GNOME Shell basic usage is displayed in full-screen


GNOME 3.8

  • Fedora 19 ships with GNOME 3.8, which comes with numerous changes and new features, including: new Activities Overview applications view.
  • overhauled search which can now include results from applications.
  • new Privacy, Notifications and Search GNOME Settings panels.
  • a new Classic mode is available for GNOME 3.8, replacing the old GNOME fallback mode. This offers a GNOME2-like layout by using some extensions on top of GNOME Shell. To install it, see below.
  • GNOME Clocks and Weather, two new application added with GNOME 3.8, are available by default in Fedora 19.
  • GNOME Documents has received an embedded edit mode for Google Docs, presentation mode and more.
  • Web (Epiphany) has switched to WebKit2 and now includes an incognito mode, new search UI and supports GTK+2 plugins, including Adobe Flash. Web is not included by default in Fedora 19 though.


Here are some Fedora 19 screenshots in which you can see some of these new GNOME 3.8 features:



Other changes

Other changes in Fedora 19 include:

  • File Roller can extract RAR archive after installing the "unar" package, a free and open source command line tool that's part of The Unarchiver project.
  • MariaDB is now the default MySQL option in Fedora.
  • 3D modeling and printing tools are available in the repositories.
  • Updated ModemManager with better support for multi-mode devices like Qualcomm Gobi WWAN cards and other devices that support the CDMA/EVDO/LTE standards, the GSM/UMTS/LTE standards, or devices that can support either.
  • firewalld (the default Fedora firewall) improvements.
  • more...


Default applications in Fedora 19

Fedora 19 ships with Nautilus 3.8.2, Gedit 3.8.2, Totem 3.8.2, GNOME Documents 3.8.3, GNOME Contacts 3.8.2, GNOME Boxes 3.8.3, Evolution 3.8.3, Cheese 3.8.2, Empathy 3.8.3, GNOME Clocks 3.8.2, GNOME Weather 3.8.2, LibreOffice 4.1 beta 2, Firefox 21, Transmission 2.77, Rhythmbox 2.99.1 and Shotwell 0.14.1, on top of GNOME Shell 3.8.3, GTK 3.8.2, Linux Kernel 3.9.5 (though an update to 3.9.8 is already available), Mesa 9.2 and Xorg server 1.14.1.


Source : webupd8.org

If you gain some knowledge from this article and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to us
Lets meet from a new article soon, have a nice day!!!

Friday, June 28, 2013

1 - Introduction to Shell Scripting

Posted in , ,

What is Linux Kernel ?

Kernel is the hart of Linux OS. It manages the resources of OS,

 I/O management
 Process management
 Device management
 File management
 Memory management

Kernal decides who will use this resource, for how long and when.

The kernel acts as an intermediary between the computer hardware and various programs/application/shell.

What is Linux Shell ?

Computer understand the binary language. It consists of 0s and 1s. In the past people used binary language to provide instruction to computers. It is difficult to read and write in machine language. So in Operating System there is a special program called "Shell" which accepts your instructions or commands in English(mostly), if you gave a valid command it passes it to kernel. Shell is not part of system kernel, but uses the system kernel to execute programs, create files etc.

Shell is a user program or it's environment provided for user interaction. Shell is an command language interpreter that executes commands read from the standard input device (keyboard) or from a file.

Several shell are available :

BASH ( Bourne-Again SHell )
Developed by : Brian Fox and Chet Ramey
Where : Free Software Foundation
Remark : Most common shell in Linux. It's Freeware shell.

CSH (C SHell)
Developed by : Bill Joy
Where : University of California (For BSD)
Remark : The C shell's syntax and usage are very similar to the C programming language.

KSH (Korn SHell)
Developed by :  David Korn
Where : AT & T Bell Labs

TCSH
Developed by : See the man page. Type $ man tcsh
Remark : TCSH is an enhanced but completely compatible version of the Berkeley UNIX C shell (CSH).

To find all available shells in your system type following command 
cat /etc/shells

Each shell does the same job, but each understand a different command syntax and provides different built-in functions.

In MS-DOS, Shell name is COMMAND.COM which is also used for same purpose, but it's not as powerful as our Linux Shells are!

Any of the above shell reads command from user (via Keyboard or Mouse) and tells Linux Os what users want. If we are giving commands from keyboard it is called command line interface ( Usually in-front of $ prompt, This prompt is depend upon your shell and Environment that you set or by your System Administrator, therefore you may get different prompt ).

To find your current shell type following command
echo $SHELL

Normally shells are interactive. It means shell accept command from you (via keyboard) and execute them.

Scripts are collections of commands that are stored in a file. The shell can read this file and act on the commands as if they were typed at the keyboard. Scripts help us to automate a wide range of tasks.

Typical operations performed by shell scripts include file manipulation, program execution, and printing text. Shell provides a variety of useful programming features to make your scripts truly powerful.

reference :
Linux Shell Scripting Tutorial v1.05r3
Writing Shell Scripts

If you gain some knowledge from this lesson and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!

Thursday, June 27, 2013

Chakra Linux - Installing applications

Posted in
From the last post we talked about Introduction to Chakra Linux. Today lets talk about installing applications you want.

As you install Chakra u have to reboot the system. Now start installing other applications you want.

#1. upgrade your system and database
for that you can use the command
   sudo pacman -Syu
 
to upgrade database
    sudo pacman -Syy
 
if you get an error saying you have to upgrade pacman to perform your operation, upgrade pacman first,
   sudo pacman -S pacman

Then you can upgrade your system and database

#2. Now we have to install a meta-package, it isn't really a package, its a script that install whole bunch of packages in one shot.
Now we're installing a meta package called "base-devel", which installs a basic set of development tools.
   sudo pacman -S base-devel

#3. In order to install packages from CCR you should install ccr and base-devel first.
To install CCR
   sudo pacman -S ccr

After you installed ccr and base-devel make sure you upgrade the system and database, then reboot your system.

Now, time to install applications you want.

#4. QT applications, these packages are in repositories, you can easily install them by typing
   sudo pacman -S package_name

#5. GTK applications, open bundle manager and install from it.

If your bundle manager is empty don't worry! after searching on internet what i found was Chakra has added a new repository called "extra", which contains apps in bundle manager.
To activate "extra" repository, type the command
   sudo pacman -Sy filesystem-extra

to check the apps in extra repository, use
   sudo pacman -Sl extra

try to install a GTK app u want
  ex- sudo pacman -Sy gimp

After activating "extra" repository if you get an error when you try to install a GTK application(gimp) it means still your extra repositories are not activated. This happened to me and what i did was i edited my "pacman.conf".

Open pacman.conf as root,
Path to file : /etc/pacman.conf

Paste this in repository section
  [extra]
  Include = /etc/pacman.d/mirrorlist

Then try to activate again using "sudo pacman -Sy filesystem-extra" and upgrade system and database.
Now i hope you can easily install GTK apps you want, Mine works like a charm

#6. To install CCR packages use
   ccr -S package_name

You don't need to be root for this.

Few commands to install some important applications

Web browser-Chromium

   sudo pacman -S chromium

Web browser-Firefox

  sudo pacman -S firefox-kde

emacs

   sudo pacman -S emacs

VIM

   sudo pacman -S vim

Java

   sudo  pacman -S openjdk

MySQL

   sudo pacman -S mysql

When your trying to install MySQL error will come saying you can't install MySQL its conflicting with MariaDB, if you want to install MySQL you'll have to remove MariaDB.

The Chakra Project decided to switch Chakra's default SQL engine to MariaDB. The upcoming KDE SC 4.10 will be built against it. 

Therefore system needs MariaDB, when you try to remove MariaDB they wont allow you saying akonadi wants MariaDB. You can't remove akonadi because system wants it,therefore to remove MariaDB use
   sudo pacman -Rdd mariadb

Obviously akonadi will miss the dependency but will work.

To install MySql
   sudo pacman -Sdd mysql

After installing MySQL you should run the setup script as root:
   systemctl start mysqld
   mysql_secure_installation

Then restart MySQL:
   systemctl restart mysqld

To start MySQL automatically at boot run:
   systemctl enable mysqld

To login as root to MySQL's command line tool use
   mysql -p -u root

The MySQL server does not listen on the TCP port 3306 by default. To allow (remote) TCP connections, comment the following line in  /etc/mysql/my.cnf
  skip-networking

Remember to edit /etc/hosts.allow by adding the following lines:
  mysqld: ALL : ALLOW
  mysqld-max: ALL : ALLOW

To get more details about MySQL click here.

NetBeans

   sudo pacman -S netbeans

Geany

   ccr -S geany

Team viewer

  ccr -S teamviewer

GIMP

   sudo pacman -S gimp

Skype

   sudo pacman -Sy skype


click here to get more packages you want .

Enjoy Chakra as you want it to be...

If you gain some knowledge from this  and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets meet from a new lesson soon, have a nice day!!!



Wednesday, June 26, 2013

Introduction to Chakra Linux

Posted in
Chakra is a desktop distribution forked from Arch Linux and its default desktop environment is KDE. Chakra is pure KDE and its developed using QT toolkit. In my opinion KDE is the finest desktop environment in the world, for any platform, and Chakra provides the smoothest, fastest KDE desktop experience.

KDE desktop environment.

Best thing about Chakra is, like Arch Linux it is a rolling-release distribution, which means once you install it in your computer, you never need to reinstall when a new version comes along – the process of applying updates takes care of that.

That being said, the simpleness and clarity in code and system architecture makes Chakra a great distro for users who want to learn the ins-and-outs of Linux. If you are a beginner and don't mind reading wiki's and forums and putting in a little effort, Chakra and its community is a great place to start!

This is the knowledge i gain after searching through internet and reading many forums,wiki,FAQ etc. I think this post will help to a new Chakra user.

To use Chakra mainly you'll have to know about following things.

Package Manager

Chakra uses a package manager called "pacman" and its a command line application developed by Arch Linux.
They are still working on a GUI package manager,for now you'll have to use pacman.

Click here to know more about pacman.

Dependencies

Some software (lots of software, actually) needs other software in order to compile, install, and run.
When a piece of software needs another piece of software, we call the piece of software it needs a dependency.

Repositories

Packages are typically kept in online repositories. Chakra maintains five main officially supported repositories:

Core        : The core system; this is the stuff you need to have a running, bootable Linux system.
Platform : Extra software that doesn't require a graphical session, along with some dependencies for KDE.
Desktop  : The KDE desktop environment.
Apps       : Graphical applications.
Games    : Games.

There's also the lib32 repository, which contains 32-bit software compiled to run on a 64-bit system.
Then there's the testing repository, where software gets tested before being moved to the main repos.
Only the main repositories are enabled on a default Chakra installation.

Mirrors

The repositories are hosted online by servers in various locations throughout the world;
these are known as mirrors because if they're all up-to-date they ought to be identical.
The more mirrors there are the less bandwidth is demanded of any one of them, and the faster users can generally download software.
Chakra now has over thirty of them, and more are being added all the time. The available mirrors are already enabled in your default setup.

Bundles

These are applications which are developed using GTK toolkit.
As Chakra is pure KDE and its developed using QT toolkit, official Chakra package repositories do not, and never will, contain any GTK apps.
There for if you want to use a GTK based apps you can get it as a bundle.

You can get bundles easily from bundle manager.

CCR - Chakra Community Repositories

These are packages contribute by people,there are many useful and needed apps still aren't added to official repositories.
Therefore people can contribute packages for CCR including GTK apps and their dependencies.

Now its time to download and install Chakra.

If you have decided to install chakra, before downloading it check your processor's architecture.
For that run the following command in your terminal or command prompt.

In a Linux environment:
cat /proc/cpuinfo

Looking for Long Mode (lm) in the flags line, will show if the system is ready for x86_64.

In a Windows environment:
wmic OS get OSArchitecture

In an OS X environment:
uname -m

If you have a 32bit computer, you cannot install Chakra. If you have a 64bit computer, you should download the "x86_64" ISO file.

System Requirements

  • An Intel Pentium II or higher processor or AMD64-ready CPU for 64bit
  • 512 MiB of RAM for running the live system and 1024 MiB of RAM for the installation, 1Gb of RAM for virtualbox installation
  • Around 3 Gib of available hard disk space (the more the better)
  • A screen capable of 1024 x 768 or higher resolution
  • A reasonably fast internet connection; dial-up is too slow!


After downloading you can put the Chakra iso file onto a CD/DVD or USB stick. To create reliable installation media, please follow the instructions in the wiki. Chakra ISO images do not support unetbootin, and DVD images need a burn speed no higher than 4×.
Now its time to boot from your CD/DVD or USB.

Graphical chakra installation program is called as "Tribe". It is a great program and in most cases works just fine. It is, however, recommended that you use an external program for more advanced drive partitioning and preparation before launching Tribe.



Click here to go through "Tribe"

Here are few Chakra Linux screenshots









If you gain some knowledge from this  and if you think this is useful leave a comment to encourage us. Good comments or bad comments all are important to usLets talk about installing applications from next post soon, have a nice day!!!