Sunday, October 27, 2013

Hacking vs. Cracking

Before I started learning Computer Science, I had always thought that hacking is a bad and illegal thing. However, as I began to learn about Computer Security, I realized that many people are actually confused between hacking and cracking. These are two completely different forms of Internet privacy and copyright. Let me explain why they are different.

Hacking is done by hackers who try to understand computer architecture, system and network to gain knowledge in order to improve better system and encryption. Hackers sometimes break into systems and networks illegally, but they, most of the time, do not cause any harm. 

Cracking is done by crackers who try to break copyright protection on software products, and to break into systems to change or steal important data. Usually, crackers are very good at coding and writing programs that crack software protections. Cracking can cause a huge loss for companies that produce software products. 


Software Protection


For example, Adobe Creative Cloud (ACC) is the cloud-based software that helps users store everything on cloud. It would probably make a lot of money for Adobe System Inc. However, according to TechSpot, it was revealed early in June, 2013 that ACC has been cracked already. Do you think how much it will cost Adobe to fix this problem of cracking? I think it will cost millions of dollars.



Software Cracked

In my point of view, hacking is not really bad as long as we learn it to improve our understanding of systems and networks and to enhance our knowledge of Computer Security. In contrast, cracking is bad because it always harms software companies that probably spend a lot of time to make useful software products for users around the world. Therefore, we need good programmers to prevent software from being cracked.  

Sunday, October 13, 2013

Linux: The Future of Gaming

       I've been always impressed by the importance and power of open source and how it's been changing the world for the past few decades. Open source always offers free license and access to its source codes; therefore, it has a huge number of users and developers around the world. It's been getting bigger and better since everyone contributes a little bit to its growth. A lot of people have started building up their own companies based on Linux as the foundation, especially companies developing games.

       As a gamer, I found it really surprising that one of my favorite game companies, Valve, has been a Linux consumer for quite long. Valve launched their first Linux game server back in 1999. Linux, nowadays, plays as the majority of game servers; and more than 1 million of Linux game servers are out there around the world. It's also used internally for the source codes, animations, models, assets, and etc. Free open source code is one of the key features that makes Linux become dominant in the software industry.

       Gabe Newell, Valve co-founder, believes that Linux is really the future of gaming. It is typically used in the gaming industry even though Linux gamers have not got a lot of attention. Several years ago, no one was sure about the direction that PC industry would be going; however, Valve founders saw a new platform, Linux, standing out  among other platforms such as XBox and PlayStation. Linux emerged as a perfect layer with full control over pricing and other features. It led to a new trend of open systems. 

       Going back to the era of all the consoles that came from that time, gaming was like almost closed. If you got a high quality graphical game, your computers wouldn't be able to handle it because of the memory and graphics card technology back then. However, PC graphics eventually reduced that shortage of technology, and the Internet took over the place of private gaming networks.

       Now it is the era of digital distribution, online gaming, and social gaming. These changes in the industry of gaming really started from the innovative open systems which will have greater advantages over regular systems. When given source codes, the heart of any software, even the users of open systems can have big contributions to things that a company produces. For instance, the Android community creates contents ten times bigger than those that any Android company's developers do.
       Therefore, in my point of view, if open source is the direction that gaming industry is heading to, Linux would be the best choice for both developers and gamers. However, it did, do and will continue requiring a lot of efforts from the users and all the companies that are interested in this field.


Sunday, October 6, 2013

Agile: A Great Tool For Project Development and Management

       In the past, I sometimes came across projects and development teams on software that follow agile development methodologies, usually Scrum. Agile is a set of software development methods which is built up on incremental and iterative development. Agile provides its users the capability to freely adapt and make changes to any project based on Agile. I didn't realize these significant characteristics of Agile until I got to explore it during one of my projects this semester; especially, it's extremely used in CS 100W.

     In order to apply Agile correctly and wisely, people should always stay away from the following mistakes:
     1) Lack of understanding of agile development methodologies. 
     2) Lack of logical system thinking.
     3) Make the implementation complicated.    

     Agile really adds new features to the traditional approach to software development process, which always assumes that final products' requirements and customers' demands won't ever change. However, in reality, customers' demands and requirements change quite often, and Agile provides a better way to adapt and make changes to the process of project development flexibly. 

     Also, Agile allows development teams to be able to give deliverable products to their clients at the end of each sprint. Everyone in the teams can respond to changes even when projects progress and customers' demands increase. This is one of the factors that makes Agile powerful. Finally, Agile is one of the best tools for project development and management that any business would need to use. 



Friday, September 20, 2013

LinkedIn and Branding: The Best Way to Professional Careers

       I have heard a lot about LinkedIn since I was a freshman in college. My college friends talked about it as a professional "Facebook" where people share profiles, news, education, working experience and what they have achieved in their lives and careers. However, I didn't realize the importance of having a LinkedIn account until I got an internship offer from a recruiter of some company on LinkedIn. Several weeks ago, I went on to check my LinkedIn and it notified me that some people have viewed my profile. I looked at the list of them and there was this account that didn't look familiar to me at all. Then I started checking out that account's profile and saw that the one who owns it is actually a recruiter. Therefore, it dawned on me that recruiters do look at people's profiles and look for hiring people on LinkedIn.

       What is LinkedIn? According to Wikipedia, LinkedIn is a social professional networking website for people in professional occupations. Over the past three to four years, LinkedIn has become the best social networking website with over 200 million users. It provides an online place to showcase your brand (knowledge, skills, working experience, and achievements). It also lets you find, connect with and follow your favorite people and organizations. But not every LinkedIn user knows how to take advantage of it because people don't know how to show their brands on the largest professional networking site in the world. They're just losing their opportunities because recruiters go through over 200 million profiles to find good candidates. Therefore, in my opinion, LinkedIn users should always make their accounts look active by posting profile pictures, filling out the summary section and updating new skills frequently. Finally, LinkedIn is one of the best places for people to sell themselves to the world of professionals.



 

Friday, September 13, 2013

QR Codes: A Wonderful Way of Connecting Paper-based Consumer to The Virtual World

       I'm always impressed by the idea of connecting paper-based-content consumers to the powerful Internet in a digital way. Back in 1994, the Quick Response (QR) code system was developed by Toyota's subsidiary, Denso Wave. It was originally designed for high-speed component scan in order to track vehicles. Since invented, QR codes have been widely used in Asia and Europe. They just started being used widely in the U.S for the past decade.

       QR codes can provide so much more information than the traditional barcodes that have been used for years. The issue occurring with barcodes was that they could not contain too much information as the demand of the increasing amount of data and information stored in barcodes. Fortunately, QR codes came out and solved this issue. So you might wonder what a QR code really is right? It basically consists of square dots which are arranged in a white background square grid. It can be read by any QR scan device such as smart phones with QR reader applications. When we scan a QR code on any poster that we see, we'll be taken to the website of the company providing that poster. In other words, QR code scanners will decode the URLs encoded in QR codes. Nowadays, manufacturers and companies can easily store more information in QR codes.

QR code samples

       Above are three QR codes that I just generated. Each one of them provides different information. If you have a smart phone with QR code scanner application, check them out. I hope you will see how powerful QR codes are, and how much information they can provide. We all live in a digital world where technology has been growing rapidly with the goal of better-suiting human needs. A lot of companies are using QR codes to build relationships with customers (customers can complete survey about companies' products quickly at anywhere and at anytime), to offer customers with promotions (place QR codes at good locations so people can check them out), and to advertise their products and services. According to a statistics in 2011, there were 14 million smartphone users in the U.S scanned a QR code (Pozin, 2012). Just looking at the big number of people scanning QR codes, in my point of view, there might be a lot more that companies can benefit from QR codes. Therefore, it is a great opportunity for people and companies to take advantage of such a great invention by Toyota.

                                                         Work Cited
Pozin, Ilya. "Are QR Codes Dead?" Forbes.com LLC, March 08, 2012. Web. 09/13/2013. http://www.forbes.com/sites/ilyapozin/2012/03/08/are-qr-codes-dead/

Friday, September 6, 2013

Social Networking Security or Lack of When Promoting Your Brand

  It was quite interesting that I got a message couple of days ago on Facebook, from a girl who is not on my friend list, about hiring me as a network marketer. I do not know who she really is and how she got all of my information on Facebook. I've never heard of or seen any recruitment on a social media platform like this before. So I thought it was funny because it's quite competitive and hard to find a job nowadays, and I even got a job offer on Facebook.
                                         

Social networking websites and social media platforms such as Facebook, Twitter and Linkedin have been exponentially growing for the past decade. Social networking provides incredible opportunities for businesses to show the world their products and services. It also provides a great chance to interact with people at anywhere and at anytime.  There are many benefits that businesses or companies can benefit from social media such as online customer services with quick responses and feedback, online conversations between clients and companies, and even online consulting. Moreover, many companies even use social media to build business relationships with customers, potential clients, employees, and investors.

However, it is quite important that companies should know how to protect their copyrights and trademarks when promoting their brands through social networking sites and social media platforms because a business brand is as valuable and important as its products and services. In my opinion, on top of those benefits, there are a lot of potential challenges coming along with social media, including
data security, privacy concerns, and personal information leaks. An example of data security and privacy concerns is on March 11, 2012, Chinese spies created a fake Facebook to friend NATO officials (Protalinski, 2012). Also, Facebook admitted that they have leaked 6 million users' information such as phone numbers and email addresses (Shih, 2013).

       Therefore, I think it is significant that companies should be aware of these issues and take measures to minimize their personal data and use to be exposed to on social media. There are several ways, in my point of view, that are useful for privacy and data protection such as use strong passwords, review privacy settings frequently, provide little personal information and use browsers with security tools like AdBlock, and NoScript. Finally, always be careful with your information and data when you're online.



                                                                     Work Cited


Protalinski, Emil. "Chinese Spies Used Fake Facebook Profile to Friend NATO Officials." CBS Interactive, March 11, 2012. Web. 09/06/2013. http://www.zdnet.com/blog/facebook/chinese-spies-used-fake-facebook-profile-to-friend-nato-officials/10389

Shih, Gerry. "Facebook Admits Year-long Data Breach Exposed 6 Million Users." Yahoo! Inc, June 21, 2013. Web. 09/06/2013. http://news.yahoo.com/facebook-admits-long-data-breach-exposed-6-million-230546858.html

Friday, August 30, 2013

Welcome!


       Hello CS100W and welcome everyone to Duc Nguyen's technical writing blog. My name is Duc Nguyen and I'm a junior Computer Science student at San Jose State University (SJSU). I started to learn programming when I was in middle school. Most of my programs were written in Visual Basic and Pascal because those two programming languages were really popular then. I love coding and even enjoy doing it when I have free time, but for sure I'm not a computer nerd. I do enjoy going out with my friends and playing tennis with my brother over weekends. Occasionally, I do some volunteering jobs like picking up trash along Tully road in San Jose and holding little soccer tournaments for obese kids at Yerba Buena High School in San Jose. I consider volunteering jobs as a meaningful way to give back to the community. Over the past 3 years, I have learned several programming languages at SJSU, such as Java, C, C++, Python, Scheme and Lisp. However, I have specially focused on software development, and CPU design. So far, I have developed an interpreter for a subset of the Scheme language using Python, created a Microprocessor without Interlocked Pipeline Stages (MIPS) Instruction Set Emulator using C, and designed a 16-bit two-cycle processor by Logisim. I hope you all will be enjoying my blog and finding the information posted here useful.