Tuesday, October 22, 2013

Hacking

                                


             When I experienced the Trojan horse at the first time, I was scare to death.  What is Trojan horse? Did it destroy my computer? Since then, I have known a word, hacking. In computer science field, “hack means gain unauthorized access to computer data or use a computer or other technological device or system in order to gain unauthorized access to data held by another person or organization.” ( Encarta Dictionary)  Actually, since then I started to be interested in computer programming. I knew from an article that all the hackers are the experts in the computer field.  Although all the hackers are smart and talented, they are in the wrong direction.

             Hacking not only is an issue which destroys the information of computer users but also harms the country’s security.  Weeks ago, the US government was shutdown. The US government worried about the attacks from hackers and asked the computer professional to defend the hacking from the hackers and fight back.

         Nowadays, computer is widely used. People like to use computer to keep their personal information. That is the reason why hackers make various hacking program to try to invade the computer users’ data.  Finding ways to protect against hacking is crucial to learn for the computer users. 

          There are some things people can do to protect computers. I found the article in AsianCatalyst.org. I think some advices are very useful and I want to share with you. 

         1, Using a firewall all the time is a very basic rule. Update the firewall often and never close it. It is the first step and easiest way to protect the computer.
         2, Configure your computer to go to sleep after a short period of inactivity and require a password to wake up.
          3, Whenever a new major revision of an operating system comes out (e.g. Vista, Windows 7, Mac OS 10.6), consider "clean" installing it, rather than installing it on top of your existing setup.
          4,   Never use an account with administrator privileges for ordinary work, particularly email or online activities such as web surfing. 

            Except the first, other advices are some kind professional, but all these are very useful for against hacking.
 

Sunday, October 13, 2013

Java: My favorite open source



                                
      “Open source refers to a computer program in which the source code is available to the general   public for use and/or modification from its original design. Open source code is typically created as a collaborative effort in which programmers improve upon the code and share the changes within the community” (Wiki) Open-source is widely used in various fields. As a computer science student, I use Java as an example to explain the advantages of the open-source.

     Java is my favorite open source language. As an open source, definitely, it is free to use. As a student who pays a large amount tuition fee every semester, I love all the free things J.  Java is also customizable. Java provides classes, libraries for user to create their projects. Because the source code is public to see and modify, I can use the class or library directly or I can modify the class according to my demands. I can add the functions in the class. I can change the structure of the class. I can do what I want to change. All of changes are acceptable. Java is flexible to use. I can use the older version; I can upgrade to the newest version. It is depended on my willing. The Java platform provides a lot of features to improve the security of java application. Java provides memory safety guarantees, and it limits the usage of uncertain unsafe operations when I write the codes.
     
                                      
Java has countless merits. I love it. I use Java to create small programs to solve my daily life on study and work. It makes my life easier to be handled.

                                                                 

http://en.wikipedia.org/wiki/Open_source  

Saturday, October 5, 2013

Agile: one step ahead your competitor

                                 Manifesto for Agile Software Development
                                      
                                 We are uncovering better ways of developing
                                  software by doing it and helping others do it.
                                  Through this work we have come to value:

                          Individuals and interactions over processes and tools
                         Working software over comprehensive documentation
                          Customer collaboration over contract negotiation

Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.



          Traditional way for IT Company to start a new product is to evaluate market first, and then to build an architecture. Once data structure is ready, the developer will work on coding. When they finish their codes, the programmers pass their works to QA for testing. If the product qualified, the IT Company will introduce product to the customers to use. When bugs come out, the product will go through the circle again. Usually one new product will take years from market evaluation to product operation. In February 2001, seventeen software developers discussed and defined a software development to deal with the long time procedure. This is Agile. Agile is a method which “promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change.”(Wiki, Agile)

            Traditional method for develop a new product may lost market opportunities. Under current competition world, corporations eager to find a good strategy or an idea with fast implementation method so the corporations can be one step or two steps ahead of their competitor. Then Agile becomes a popular word which is mentioned daily in IT Company.

         Agile not only saves the release time, but also has an advantage on Flexibility/ Agility

         I explain Agile method by using our CS100W project.  Our group cuts the whole project into five sprints which lasts one or two weeks long. Each sprint involves a cross functional team which work on designing, analysis, collection information, combination, testing. If we find any mistakes, we can go back to correct quickly.
         Nowadays, because of the merits of the Agile method, lots of  IT Companies use it as the strategy for product release. As a computer science major student, I think that Agile is a necessary skill which train me to be a  professional.
 
 
Reference: