Friday, October 3, 2014

Install Ubuntu 14.04 in Dual Boot Mode with Windows 8 or 8.1


Follow Windows installation first and Ubuntu second.

For fresh installation of both OR Ubuntu not detecting existing partitions / Windows installation:

1. Boot into Ubuntu 14.04 Live
2. From Unity, select GPart 2.
3. Create 2 partitions using GPart 2 - one partition with NTFS for Windows & the other with ext4 for Ubuntu.
4. Now Quit from Live boot.
5. Insert Windows 8 usb/disk and install to NTFS partition.
6. Now, install Ubuntu with / and /swap partitions

If BootMenu is not visible with Windows & Ubuntu,
- press "Shift" key after POST or system on.
- Select Advance options of Ubuntu
- Select "Update GRUB"
- Now, the action can detect Windows installation and will configure BootMenu accordingly.
- After system reboot, you can see the BootMenu for selecting Windows or Ubuntu

Also read:
http://itsfoss.com/install-ubuntu-1404-dual-boot-mode-windows-8-81-uefi/

Thursday, February 13, 2014

Fix for Ralink WiFi card issue with Linux on HP laptops


1. Connect a wired cable connection to the computer to have Internet connection for the moment while you do the steps below.

2. Open a terminal and execute the following line to install everything needed to compile your very own wireless drivers:

sudo apt-get update && sudo apt-get install build-essential linux-headers-generic

3. Go to Mediatek and download the Ralink RT3290 Driver for Linux

4. Rename the file to 2012_0508_RT3290_Linux_STA_v2.6.0.0.tar.bz2

5. Extract the file and it should contain a folder named DPO_RT3290_LinuxSTA_V2600_20120508

6. Go to DPO_RT3290_LinuxSTA_V2600_20120508/os/linux/ and edit the file config.mk

7. Find the following variable:

HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n
 
change it to

HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

and save the file.

8. On Terminal, go to your main extracted folder (It should be the DPO_RT3290_LinuxSTA_V2600_20120508 folder) and type the following:

make
sudo make install

9. If everything compiled correctly do the following: modprobe rt3290sta

10. If step 9 runs without any problems, add the module to the list of modules to loaded upon every boot:

sudo gedit /etc/modules/

and add rt3290sta at the end of the file. Save and exit.

References:

Friday, January 10, 2014

Best Antivirus for Windows 8 / Windows 7 for the year 2014


Recommended Paid Antivirus:

ESET Nod32 Antivirus: ESET NOD32 Antivirus delivers comprehensive antivirus protection. Independent test labs find it easy to use. It protects from malware by comparing suspect files to its known list of threats. It also examines files that seem threatening to see if they are dangerous even if they aren’t in the list of known threats yet. The software protects you from email threats and external media. If you switch to battery mode on a laptop, the software adjusts its behavior so that non-essential activities are curtailed until the laptop is plugged in. In case any malware penetrates the barriers and collapses a system, the product enables creation of a bootable disk or USB drive that will disinfect the PC and restore it to health.




Recommended Free Antivirus:
1. Avast Antivirus
2. Avira Antivirus Personal
3. Microsoft Security Essentials


Thursday, January 9, 2014

DigitalOcean - Simple Cloud Hosting

Digital Ocean


Digital Ocean is a Virtual Private Server (VPS) provider based in New York. It basically provides the hardware to host your own Virtual Machine. With their SSD hard drives, we can expect much faster disk i/o performance when compared to a traditional storage medium.

Like Amazon "Instances", DigitalOcean calls each virtual machine a "Droplet".

Features include:
  • Tier-1 Bandwidth
  • KVM Virtualization
  • Hex Core machines with dedicated ECC Ram and RAID SSD storage.
  • Flexible API
  • Easy-to-use Control Panel
  • Two-Factor Authentication
  • 99.99% Uptime SLA
  • Trusted Network Providers
  • Multiple Data Center Locations
Their cheapest plan start from $5 for 512 MB RAM and 20 GB SSD storage.

Friday, January 3, 2014

Example GIT workflow


Here is a simple workflow with GIT
  • Consider two environments – development and production.
  • Development environment has a git repository with two branches – “dev” and “master”. “dev” is the branch for daily development use – to check-in also the half-baked code. “master” branch is used for merging “dev” branch into “master” for pushing the development changes to the production environment. Set up repository in a location that is accessible for all developers (a network share / a server that people can ssh into / a third-party service like github or bitbucket).
  • Production environment has a git repository just with the “master” branch which contains the latest production code.
  • Clone development environment repository onto each developer's machine and work on your local copy; After every development cycle in development environment I look at which files have been changed using “git status” and add all the changed files for commit using “git add <file>”.
  • When that is done, commit the code to the “dev” branch using “git commit -m “<commit message>”". Commits are local, so you won't hurt anyone.
  • After commit, just for sake of backup, push the local repository’s “dev” branch changes to the central repo by using “git push”
  • When a code in “dev” branch is tested and found ready for pushing to production environment, I am merging the “dev” branch into the “master” branch in development environment using following commands: first “git checkout master”, then “git merge dev” and push the changes of master branch to the remote git server usign “git push”
  • Then deploy the altered code by pulling the changes to the production environment by switching to the production environment and using “git pull” – this is pulling the code from the remote git server’s “master” branch.
  • On the central repo, whenever you have a version you want to mark as release candidate, tag it. This way, you can update any given clone to that exact version later on. 

References:


Wednesday, January 1, 2014

OpenShift - The Open Hybrid Cloud Application Platform by Red Hat

OpenShift is Red Hat's Platform-as-a-Service (PaaS) that allows developers to quickly develop, host, and scale applications in a cloud environment. With OpenShift you have choice of offerings, including online, on premise, and open source project options.

OpenShift works under the PaaS instance/dyno model, allowing you to deploy your code to a specified number of “gears” or “cartridges.” Each of these gears is dedicated to running the code of a certain portion of your application, whether it’s accessing the attached database, responding to HTTP requests or processing background jobs. You can define your own processes and assign them to gears or cartridges, giving you more granular control over the performance of your application.

The customizable gear model makes OpenShift perfect for introducing specialized tasks through your application. For example, you could dedicate an entire array of gears to media transcoding and build your own media converter on their infrastructure. You can then supercharge your production by allotting more gears to the processes and return converted files in seconds. This level of control and customization is great for applications that may do things requiring more computing power than a traditional website.

OpenShift is compatible with several major web languages, including PHP, Python, Ruby, Java, Node.js and even Perl. They also allow you to use relational databases from the SQL family or NoSQL “flat” databases like MongoDB. Most of the upload and deployment process is handled by a command-line interface backed by Git, the popular source-control software.

Customer support is the only area where OpenShift fell behind the competition. Like other PaaS products, it provides ample written documentation in the form of tutorials, FAQs etc. They rely heavily on their community for answers to questions, listing community-based services like IRC chat and community forums as resources for troubleshooting.

Tuesday, December 31, 2013

Cloud Computing - What is SAAS , PAAS and IAAS ?

Software as a Service (SaaS) is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet. Platform as a Service (PaaS) is a paradigm for delivering operating systems and associated services over the Internet without downloads or installation. Infrastructure as a Service (IaaS) involves outsourcing the equipment used to support operations, including storage, hardware, servers and networking components.




Cloud Service Hierarchy


IAAS (Infrastructure As A Service) :
The base layer - Deals with Virtual Machines, Storage (Hard Disks), Servers, Network, Load Balancers etc
Example: Google Compute Engine (One can develop programs to be run on high performing google's computing infrastructure)

PAAS (Platform As A Service) :
A layer on top of IAAS - Runtimes (like java runtimes), Databases (like mySql, Oracle), Web Servers (tomcat etc)
Example: Google App Engine (One can develop applications and let them execute on top of Google app engine which take care of the execution)

SAAS (Software As A Service) :
A layer on top on PAAS - Applications like email (Gmail, Yahoo mail etc), Social Networking sites (Facebook etc)
Example: Gmail, Google+ etc (One can use email services and extend email/google+ based applications to form newer applications)