Friday, November 29, 2013

Cryptography and Computer Security


Did you buy anything online recently? Use an ATM machine? If so, whether you know it or not, you used cryptography. Cryptography (in the guise of the SSL protocol) protects your credit card information as it whizzes across the Internet, and ensures that others can't withdraw money from your account.

Our computers help us stay connected to the modern world. We use them for banking and bill paying, shopping, connecting with our friends and family through email and social networking sites, surfing the internet, and so much more. We rely so heavily on our computers to provide these services that we sometimes overlook their security. Because our computers have such critical roles in our lives and we trust them with so much personal information, it’s important to improve their security so we can continue to rely on them and keep our information safe.

Attackers can infect your computer with malicious software, or malware, in many different ways. They can take advantage of unsafe user practices and flaws in your computer’s programs (flaws including vulnerabilities and unsecured services and features) and use social engineering (in which an attacker convinces someone to perform an action such as opening a malicious email attachment or following a malicious link). Once your computer is infected, intruders can use the malware to access your computer without your knowledge to perform unwanted actions. They can steal your personal information, change computer configurations, cause your computer to perform unreliably, and install even more malware they can use to leverage attacks or spread malware to others.

Cryptography refers to encryption, where the ordinary message is process based on some algorithm into unintelligible text called as cipher text. The main purpose of encryption here is to provide confidentiality, integrity, non-repudiation and authentication.

Following practice will make you to keep your computer secure
·         Connect to secure network
·         Enable and configure firewall
·         Install Antivirus
·         Remove unnecessary software
·         Operate under the least privilege
·         Apply software update

Ref:-

Sunday, November 24, 2013

Artificial Intelligence


Before we get into What Artificial intelligence, let’s first understand what is intelligence? Intelligence is usually said to involve mental capabilities such as the ability to reason, plan, solve problem, think abstractly, comprehend ideas and language and learn.

Now what is Artificial Intelligence? , Intelligence exhibited by an artificial entity. [Wikipedia]
AI can also be defined as the area of computer science that deals with the ways in which computers can be made to perform cognitive functions ascribed to humans. But this definition does not say what functions are performed, to what degree they are performed, or how these functions are carried out.

Computer cannot easily deal with abstract idea like we human do, we must define the concrete rule in the form of algorithm for computer to follow.

AI draws heavily on following domains of study.
·         Computer Science
·         Cognitive Science
·         Engineering
·         Ethics
·         Linguistics
·         Logic
·         Mathematics
·         Natural Sciences
·         Philosophy
·         Physiology
·         Psychology
·         Statistics
Where can AI applied?
·         Robotics
·         Internet search
·         Scheduling
·         Planning
·         Logistics
·         HCI
·         Games
·         Auction design
·         Diagnosis
·         General reasoning
It is true that AI does not yet achieve its ultimate goal. Still AI systems could not defeat even a three year old child on many counts: ability to recognize and remember different objects, adapt to new situations, understand and generate human languages, and so on. The main problem is that we, still could not understand how human mind works, how we learn new things, especially how we learn languages and reproduce them properly.

AI: will it attain human-level or above human-level intelligence or not.

Example : Personal Assistant SIRI  http://en.wikipedia.org/wiki/Siri



Ref: 
http://intelligence.worldofcomputing.net/tag/introduction
http://en.wikipedia.org/wiki/Artificial_intelligence

Friday, November 15, 2013

About Computer Science?

Computer Science is concerned with "the study of symbol-manipulating machines, with communication between man and machine and with the application of these machines".

Who invented the computer? Answer to this question would not be simple enough, the real answer is that many inventors contributed to the history of computers and defining computer as a complex piece of machinery made up of many parts used to solve complex problems.

Thirty year ago the most common interaction with computer was via punch card and type writer-styled terminals. The most dramatic developments have been the integration of technologies , such as low-cost, high-capacity storage media, high-definition video and audio processors, touch sensitive displays, motion sensors, compression algorithms, to name just a few of the majors.



Evolution:- Computer science is a branch of Mathematics which generally consists of theoretical foundation of information and computation. Focus on practical implementation and teach us how to implement and apply this information in real world like theoretical aspects of algorithms to practical aspect of implementing these algorithms. Computer Science can be viewed as the science of problem solving, designing, analyzing and verifying the solutions.

Computer Science has connection to other disciplines or other industry domains like Consumer goods, health care, insurance and banking domain, for which finding a solution requires both computer science expertise and knowledge of particular domain. This result in wide range of specialties like computer architect, System Engineer, Software engineer, graphics expert and so on, where each specific area focuses on particular challenges. 

For more Info:-
1) History of computer science link
2) What is Computer Science? link
3) Evolution of Computer Science link

Friday, November 8, 2013

File Sharing

Digital reading will completely take over. It's lightweight and it's fantastic for sharing. Over time it will take over.
 – Bill Gates

File sharing is the practice of making files available for other individual to download. The most common method of file sharing, is the use of peer- to –peer software. This includes software such as Limewire, Morpheus, DropBox and BitTorrent. P2P Software package are installed as a standalone application on computer and appear somewhat innocuous in their behavior; you install them and then use these programs to download “Free” music, video etc. In addition, your computer becomes part of this network as well, enabling other individuals on the Internet to begin downloading music/files/e-books from your computer.

Other ways of file sharing over the internet such as:
  •           HTTP File hosting sites (RapidShare, Fileserve, ADrive, etc.)
  •          FTP servers
  •          Email storage space (sharing files -- Hotmail, Gmail, etc.)


The probable security concern in file sharing
  • Installation of malicious code
  • Exposure of sensitive or personal information
  • Susceptibility to attack
  • Denial of service
  • Prosecution
  • Provide covert channel 
 Its you are being held responsible for downloading and distributing copyrighted material illegally.

How to minimize these risks
  •   Use of anti-virus software
  •   Install or enable a firewall
  •  Use Authorize access control list.
 list of most popular file sharing website http://www.ebizmba.com/articles/file-sharing-websites
File sharing http://www.business.ftc.gov/documents/bus46-peer-peer-file-sharing-guide-business#risks


Friday, November 1, 2013

Data Structure


Data structure is important since it dictate the type of operation we can perform on the data and how efficiently they can be carried out. It also dictate how dynamic we can be in dealing with our data; for example it dictates if we can add additional data on the fly or if we need to know about all of the data up front. We determine which data structure to use to store our data only after we have carefully analyzed the problem as know at least what it is we hope to do with data; for example if we will require random access or sequential access or the ability to move both forward and backward through the data.

Purpose of data structure
·        To store and retrieve information
·        Efficient processing
·        Study of data structure and algorithm

Why Data structure – Complex design require careful and efficient program design. Analysis on correct algorithms are performed in order to estimate how much resource (computer memory, Processing time etc) are consumed by the algorithm. This will help us to look into different better ways to design the algorithm which would reduce the resource consumption, thus making the algorithm efficient.Data Structure require, space to store data item, Time  to perform each operation and programming effort.

Therefore one should need to know about data structures and algorithms. They are the fundamental building blocks of programs. Anyone can learn the syntax of a programming language, but to actually write meaningful programs, you have to understand how to use data structures and algorithms



Saturday, October 26, 2013

Hacking


"Someone who relates to technology as a form of play" Lee Felsenstein 
 
The term hacker is used in popular media to describe someone who try to gain the unauthorized access to once system or attempts to break into computer systems. Hacker would be a proficient programmer with sufficient knowledge to understand the weak points in a security system, might cause serious security threat to confidentiality and integrity of data.


Reason why most of the organization spent a lot in term of security is more or more organization moving their business process online. Because in an organization consist of various electronic documents that contain critical and highly confidential data and due to which organizations make a significant investment to properly protect these documents

Some technique hacker use to get access to a website inside. 
Hacking does have some advantage to business, 
  • building awareness about the protection and security at all levels
  • finding out the possible vulnerabilities
  • suggesting effective security procedure
  • providing a support for current and future IT activities 
A professional hacker, hired by many organization and asked to break their system just to determine any security flaw in system. A hacker helps an organization in understanding the importance of  security with their experience of hacking, and displays the ways or series of steps an intruder can actually perform to harness the company resources for his own purpose. Professional security experts can efficiently by-pass the security solutions  and can gain access to the confidential data repository and network resources without any authentication. Afterwards, they reports all the possible threat areas and appropriate solution for the same in order to secure the organizational resources and perimeter efficiently.


Monday, October 14, 2013

OPEN SOURCE Vs CLOSED SOURCE

Most software that you buy or download only comes in the compiled ready-to-run version. Compiled means that the actual program code that the developer created, known as the source code, has run through a special program called a compiler that translates the source code into a form that the computer can. It is extremely difficult to modify the compiled version of most applications and nearly impossible to see exactly how the developer created different parts of the program. Most commercial software manufacturers see this as an advantage that keeps other companies from copying their code and using it in a competing product. It also gives them control over the quality and features found in a particular product.
 This kind of software is frequently called "proprietary software" or "closed source" software, because its source code is the property of its original authors, who are the only ones legally allowed to copy or modify it. Microsoft Word and Adobe Photoshop are examples of proprietary software



Open source software is at the opposite end of the spectrum. The source code is included with the compiled version and modification or customization is actually encouraged. The software developers who support the open source concept believe that by allowing anyone who's interested to modify the source code, the application will be more useful and error-free over the long term.
To be considered as open source software by the software development industry, certain criteria must be met:
·         The program must be freely distributed
·         Source code must be included.
·         Anyone must be allowed to modify the source code.
·         Modified versions can be redistributed.
·         The license must not require the exclusion of other software or interfere with the operation of other software.

A common concern for end-users who wish to use open source software is the lack of a warranty and technical support. Because the software's license encourages modification and customization, it is nearly impossible to  support,For most businesses, the assurance of technical support has been a key factor in the decision.

In my opinion Closed source is better than Open source
  • You never have to fix component when something goes wrong
  • You don't have to worry about contributing your change back to community
  • You don't have to think about open source licensing term and compliance issues
  • You don't have to choose among dozen of option of every component
  • You don't have to look around for technical support


Ref:



Friday, October 4, 2013

Overview of Agile Methodology

“Plan your work, then work your Plan” by Martin Fowler and Neal Ford

There are many traditional approaches to software development, one of it is waterfall development which follows up the sequential steps/process /phases, in which one phase of the project must be completed before the next phase can begin example water fall model, just like automobile on an assembly line.
So here one rarely re-visit  phase once its completed , that means you better get whatever you are doing right the first time. You don’t realize any value until the end of the project, leave testing until the end, this approach is highly risky, often more costly and generally less efficient than Agile.Here in Agile we follow the recursion of all the phases in multiple sprint.


Agile Manifesto
  •  Work closely with client, in all the phases of development cycle
  •  Welcome changing   requirements, even late in development. 
  •   Business people and developers must work together daily throughout the project.  
  •    At regular intervals, require complete team involvement, by this we achieve technical excellence and come up with good design and approaches.


How it works
  • Split your organization into small cross-functional, self-organizing teams. [Project owner/ Scrum master /Scrum Team]
  •  Split work in to a list of small concrete deliverable. Split time into short fixed- length iteration/ sprints
  •  Optimize release plan / Optimize the process.

Things we do in scrum
Describe the user story – Estimate the work associated – Rank them in order of importance – Daily scrum meeting to discuss what did you do today? What you will do today ? Any obstacles?


Agile Success
  


Ref:

Wednesday, September 18, 2013

Linedin and Branding : Business building tool

Linkedin founder Reid Hoffman notes that companies don’t give business – People do.

                    “It’s better to be connected than the most connected”


If you are a professional, building your own business or looking to form connections and network with others, then Linkedin is the right platform , it’s an amazing tool to promote your product or service.
This provide the place where you can collaborate with people or group which are doing business in the same domain, and it is the place where with up to date profile can lend you next big opportunity.


When an individual joins the linkedin, they are given oppurtunity to create personal profile, while if you want to promote your business or want to create the awareness about it then one can create a company profile

Few tips building business over linkedin
  1.   Use appropriate keyword phrases in your heading and title
  2.  Tag your skills and expertise
  3. Link to your websites with keyword
  4. Tag and filter connection to organize and build relationship
  5.   Personally welcome and acknowledge your new connection
Few tips to generate more business
  1.  Complete the profile, Showcase your offering
  2.   Let prospect easily find you – optimize your profile
  3. Give your prospect to connect with you – must have a compelling headline that grab their attention
  4.  Give prospect a reason to take action
  5.  Grow your network so prospect can find you
                       

           Some facts about Linkedin
                 http://visual.ly/10-amazing-linkedin-statistics-2013
           
            Few tools that linked in offer which are helpful in building business
           1) Partner Message
           2) Polls
           3) Display ads
           4) Recommendation ads

           At last, Public profile over linked in appear to be as social selling business card.

           
.

Friday, September 13, 2013

QR Codes - Quick access to information : What - How?



QR Code are Quick response code, they came to us from Japan where they are very common  it’s a two dimensional bar code, this is basically machine readable code, Once scanned ,will redirect you to either the web page of the product showing you the complete detail  of the item to which the QR code tagged. So one can think of QR code as a URL shortens but designed for your smartphone, let say it is the digital image of your URL. By using app on your mobile device can take you to the website embedded  in the QR code. There might be security issue , if you are not able to track the path the QR code is taking to since this might lead to some fake url which is controlled by the attacker.

To name few app that read QR Code :- QR Droid [Android], QR Reader [iPhone], QR Code scanner Pro [Black berry] , QR4 [Windows Phone]

QR code can be used in various sector, like in tour and travel, where person can just pull out the smart phone just scan over the QR code, which is tagged over the historical monuments, using this user can pull out the information regarding the monument. This can be used to track logistic, point of purchase product identification, medical record management ticketing and boarding passes, Document tracking, can be used for promoting business service and products.


To generate the QR code one can refer to following link


Wednesday, September 4, 2013

Social Network Security - Lack when promoting your Brand

In this digital era, every one want the information to be handy in the hand held device, and with the advent of high speed internet, interconnected devices make this possible to share the information like photo videos, and messages. There are many available Social networking web sites available to name few - MySpace, Facebook, Twitter,You Tube, Linked in & Window live space, which help in to full fill the same purpose.


Business uses social network platform to promote their brand in order to pull out more audience.  So if in business one want to build the social networking first business should determine the goal of the social media engagement, should get a social media manager. People use social networking for sharing ideas and  should have to participate more with media to get more for building brand. This will help in building new customer base.

For every pros we have con’s as well, if Social networking is not used in a proper way, there is a high risk of losing your brand or business, this could be like misuse of the highly confidential Information which might be accidentally posted on social network site , so one should maintain and implement the information security policy and procedure, should train employees on these policies and procedure, and do set up the privacy security setting this will help to control who see what you want to share and manage online experience in positive way.


So social networking , should be first used to build up the customer relation,and to understand and study the current market, and then slowly  build up to sell and promote your service and products.

Friday, August 30, 2013

Vimal Kumar (CS200W)

Hello,

 My name is Vimal Kumar. I have an industrial experience of five years in IT- service industry worked majorly technology related to Microsoft platform, I am also Microsoft Certified Professional developer. About my skill set, I am always open to learn new things, but yes I do have a primary skill which is Sharepoint/Office 365 development , to briefly define what Sharepoint is - It is a Microsoft product which is used for collaboration; file sharing, web publishing, extranet, business intelligence and social & enterprise search. Apart from this i do have experience in Asp.net (3.0,.3.5,4.0) using c#, HTML5+CSS+Jquery, Javascript, WCF 3.5 , WPF 4, Microsoft Workflow Foundation and Windows phone development (7.1).

 From my past experience I learnt a lot, like how to handle work pressure, way to handle different situation with in the team, best part was got a global exposure, working along with people which are located geographically in different location.

  What excite me about Computer Science is its an fast growing field which is not specific to any particular industry or domain, form my experience I can say that, it is used majorly used in all domains like Bio-Medical, Communication, Bank- financial domain, Consumer goods and so on. What excite me more about it is, here you always find new challenges coming up daily from various domain and segment, which provide opportunity to explore and learn more on the technology upfront and how best you can serve or solve the real time problems using your knowledge and skill set.



“To see what everyone can see but observe only what a few may observe and innovate and build upon the idea,” is the job of an engineer.


Thanks