Thursday, February 17, 2011

Hmm...what language to learn?

The last few days I had a discussion with the web programmer at work about programming languages. It was funny how naive I am about the business use of programming languages.  In college, we learned so many programming languages and you would think that this is what it's like when you are in the workforce.  The reality is there might be a handful of programmers that use multiple programming languages but most of the time in almost anything one eventually has to specialize in something, in this case a programmer specializes in one language.  This led me to believe if I wanted to develop software myself what programming language would I specialize in?  These days I have noticed from reading books and understanding the versatility of some languages that there is no doubt Java would be one of my first choices. Another useful language combo that would be good for developing applications is C\C++ or even C# because they are a language built for quick execution.  I am seeing much more use of RPG these days because of the usefulness and simplicity of the data management an AS400 provides, which can be used for numerous business applications. The last very applicable programming language that I would consider developing in is Visual Basic, which in itself has many uses from applications to web development.  The question is which one would be the best choice? 

Java was one of the first languages I got into when I started working on my major in college. Over time, I realized all the various uses that Java had.  The strengths of Java are that you can develop applications, applets (web), and libraries on the application-focused side of it.  On the web side of Java there are servlets, struts, Java Server Pages (JSP) and Java Beans.  Java can simplify the process of building your own libraries.  Libraries can be imported in to a project and be used give certain functionality to anyone who wants to use it. This is why Java is developed very well and has so much included in the language.  The language also has extensive support for most database technologies and has a choice of a various graphical interface kits.  The only weak point I have noticed when programming Java is that it doesn't have a very strong scripting focus included in it because the language puts a big focus on objects oriented programming. 

The C languages are also versatile languages but what makes them a very strong choice to anyone is that they compile to executable machine code giving them faster execution time then a language like Java that uses a virtual machine to run its programs.  Having a fast program execution makes this language very good for developing applications.  One scary thing I found is that some large scale companies don't use C\C++ to develop their applications especially crucial components such as servers and client connections which would function at their best with the low overhead from using C\C++.  If actual computer-savvy programmers got together to develop some of these applications for some of these companies I am talking about it would benefit the reputation of that this company as well as the companies that buy their software.  Some of the most heavily used programs and even operating system are written in C or C++.

A few years ago in one of my old jobs I heard of a computer system called AS400.  When programming one of these devices a programmer uses the language RPG to develop software to interact with a database.  With this functionality these devices would be vary useful and expandable in business.  A person I know who is an AS400 programmer, knows the functionality of the AS400 and he raves about using it. The AS400 has many capabilities like being integrated with a DB2 database, having multi-user support, a menu-driven interface and support for many modern technologies. Because of the versatility of the AS400 for data-driven industries, I am surprised we don't see more of these machines and AS400 programmers probably feel the same way. 

The last language that I will be reviewing is one of the first language families that I have ever been exposed to. Some people love to make fun of this language, like Dijkstra (a computer scientist) did, but it is so integrated within other technologies provided by Microsoft it could be considered one of the most useful languages available and the name of this language is Visual Basic.  Visual Basic has elements of BASIC and QuickBasic style syntax and similar statements which can make it easy to pick up.  Visual Basic in itself can be used to develop graphical applications.  You can also interface these graphical applications with databases of various technologies such as Microsoft Access or Microsoft SQL.  The language in itself is very similar to Visual Basic script which is used as the primary language in developing web applications with ASP.  This is an example of how Visual Basic can be used for both the web and for applications.  The versatility of this programming language makes it a good choice for many business applications. 

I know these aren't the top languages out there but they are my opinion by observation and study of the capabilities each of these languages has.

Sunday, February 13, 2011

The benefits of cyberspace in your back pocket

I stand amazed sometimes at how much one can do with internet. With tools like Facebook, Twitter, various blog sites, like Blogger or Xanga, YouTube and many others you can read and produce whatever you want. According to the news, Justin Bieber and Owl City both got famous from posting their music on YouTube. In the recent news, people in Egypt were using Facebook and Twitter to rally people against the leader of the country. There are other people, like writer Tucker Max, who got famous for posting his stuff on a blog when he got rejected by publishing companies. It is literally amazing the depth of the tool we call the World Wide Web can hold. The internet is loaded with tons of information that you could almost learn anything without even going to college. After all, some of the greatest people in the business world didn't go far in college. The greatest thing is that new information is coming out all over the web every single day. There is more news and opinions that get written every day. Sometimes when using a search engine, it does seem like the web is just "cyberspace".

I think that YouTube is very useful tool for people to use. I see all sorts of media that is published on these sites. I have found everything from music videos, both amateur and professional grade, video blogs, both amateur and professional grade, TV shows, movie clips and even extremely random videos that have no intellectual meaning. I find that a site like this can encourage a massive amount of creativity since you can create your own media and post it on the site if you want to. I find that there are many of young people that are on here singing, blogging and saying random stuff on there. It is definitely a way to express your creativity freely to the world. Justin Bieber and Owl City are two examples of people that got popular by catching the eyes of producers by posting media on their channels. I find that if these tools are used in the right way people can do almost anything with them.

The next tools to discuss are Facebook and Twitter which as I have blogged about earlier have their ups and downsides. Recently, one use that these two sites were put to work with was, the demonstrators of Egypt's revolution rallied people online. I find that this can be a good way to use a social media site because its focus is on connecting other people together and communicating with them effectively. These sites are specifically designed for social reasons. There are times when being very social is a good thing because being able to have people in your life, especially those that are different than you and can be very helpful to you. Of course we all know the downside of being too social but it really depends on how much you really care about your privacy.

Finally, like video media and social media, blogging is a way people can write and put themselves out for people to discover them. You can write lengthy blog posts like ones I have written the last few days or you can just write short little one sentence blogs about your day. You can also put pictures, video or audio in your blogs. One success story is the author Tucker Max who got rejected by some publishers non-stop. He starts a website and started blogging his ideas and stories and he became popular that way. Now he gets publishers accepting his stories and he has a new book that has come out a few months ago. That is another success story about how people can use this social media to get all sorts of opportunities.

There is also a ton of news and information on the internet. With devices like smart phones, you can get this information the minute it is released. Technology like RSS allows can streamline how you get your information. I almost think how ridiculous the internet and all of these technologies working with it have made the pace of technological advance move. We seem to become more specialized, and more knowledgeable about almost anything we deal with. There is countless information on every subject anywhere on the internet that all you have to do is search for it using a search engine. As far as news goes though, being able to see most of the news online and to have regular access to the news archives can make everyone very resourceful if they know how to.

In regards to the last paragraph, there seems to be so much "space" out there where people can put all sorts of creative works, technological advancements or articles of interest that no wonder these industries are booming. You even think how this world is getting smaller and smaller and people have more information than ever before. I don't know if "cyberspace" is a term we use to call the internet anymore but it feels like with the infinite possibilities the Web can be utilized, I think it still lives up to the term’s description.

Saturday, February 12, 2011

Facebook Privacy Concerns

I recently quit using Facebook because I had the feeling that I was being watched all the time, which is a scary feeling. I can understand if you are rich and famous that people would want to see what you are doing. As fun as it is to be popular and social, it does have its downsides. When one displays personal information on the site it can be a serious danger because then almost anyone can see your information. Who likes to be stalked, anyway? For the people in one's circle of friends, you are likely to see the good, bad and the ugly of what your friends post. With the more ways to communicate that Facebook offers, people have more and more access to you, this even includes people in the company you might work in. Businesses that could use the publicity, Facebook is a great tool for promoting a business but for personal reasons it is a risky piece of software to use.

The whole problem of displaying personal information came up for me a few years ago when I was in the end of my college years and applications were just starting to get introduced to Facebook. According to some other informational reads that I have read over the years, something as little as a birth year can allow hackers to get all sorts of sensitive information about you. It is even worse to put your address or hometown on your profile because it is information that again hackers can use to get your personal information or even endanger your life. On top of that, telling everyone on Facebook what you are doing can endanger your life even more because everyone including the bad people will know where you are and what you are doing. No one wants to get stalked.

The other big issue that led me to leave Facebook is how people can post about their lives in their statuses. Like the paragraph above, telling the world what you are doing or worse telling the world something stupid can get you into trouble with creeps or even businesses that can help you pay the bills. There are websites that are out there that allow one to search a name of someone and get every instance that the name appears on the web, including all social networking sites. These tools are handy for HR departments of companies to not only see if you have a social networking page but to also learn a little about you via the pictures and dialogs that get recorded on the site. People have gotten fired from posting the wrong type of information on Facebook.

Within the last few paragraphs, I touched on the fact that Facebook gives people more access to you personally. There was an article in the news about Facebook's owner, Mark Zuckerburg, getting stalked on his own creation. Right before I quit, I felt very much like people had way too much access to me. Every time someone took a picture of me and tagged me, the pictures would show up in my personal feed and the universal feed for all of my friends to see. I have seen people that I know that have pictures pop up on their Facebook (and the feed) of them that I am pretty sure they don't want posted for the world to see. Once anything is posted it can surely be deleted but there might be a small point in time that your entire world will see whatever was posted.

I have realized in the last year how important privacy can be when it comes to the internet and in general. The internet has an abundance of creeps and other low-lives that just want to steal your personal information and even ruin your life. Even though Facebook is a very mature project at this point in its history, and is constantly evolving, I am hoping they make and effort to warn or even protect people out there from identity theft, infidelity, and stalking and job loss stupidity when they use this site. I would also encourage others protect your privacy at all times whether you are on or off the internet.

Friday, February 11, 2011

5 of the handy live CDs out in cyberspace

Being in the IT field, often times one must use a live CD to access a drive without having to go into the computer through the normal operating system boot up (99% of the time Windows).  Over the years, there have been many live CDs that have been developed and have used to fix problems.  The live CD base tends to focus dominantly on Linux, mainly because Linux is open sourced and all the tools are freely available to many people over the internet.  There are some other live CDs on the web that don't use Linux as the base operating system but instead some kind of obscure operating system or even Microsoft Windows.  Most of the Linux live CDs are a challenge to make but are better when they are maintained well like some of the live CDs reviewed below.  Over the years as problems have occurred in the workplace, five specific live CDs have established themselves and have left a memorable impact.  These live CDs are Slax, Ubuntu, Puppy Linux, Parted Magic and UBCD4Win.

Puppy Linux

I first tried out Puppy Linux when I was going through college about two or three years ago.  I am sure Puppy has changed much over the years and is probably different now.  At that time, what made it a very unique flavor of Linux was that not only was it small but it ran the operating system after it was loaded into RAM at boot time.  I remember for my computer, which is about nine years old now at this point, Puppy Linux was very fast and responsive on it.  Normally the program resides on the hard drive which makes it a longer process for a program or an action in the operating system to get processed by the processor.  Since the whole operating system is loaded from RAM the operating system doesn't have to find the program and load it from the hard drive.  Also because of its small size it can easily fit into RAM.  Puppy Linux has probably grown since the days I used it but it was a memorable distribution that I would encourage anyone to try.

Ubuntu

Most people who have tried Linux have heard of Ubuntu because it is probably one of the most user-friendly and full-featured distributions there is.  The live CD is very well developed and has support for various types of hardware.  With Ubuntu you can boot into a live environment and test out the distribution and you don't even have to install it if you don't want to.  There is a utility on the live CD that allows you to install it to the hard drive, all from the live environment.  The live environment has all the applications that the version you would install on your hard drive if you installed it.  Overall, Ubuntu could be one of the most useful and easy to learn distributions of Linux.

Slax

I recently had been using this distribution to do some modifications to some of the files within some Windows installations of work computers.  The way Slax works is you go to the website and you choose the programs that you want to install.  These programs might have a dependency on another program or library in which the website will tell you what you need to include to get the image to work properly.  Once you have every thing you need you download a CD image to burn to a CD.  The main concept of Slax that makes it different from most live CDs is that an image is built modularly (which is apparent from the image builder on the website).  Slax is also a "live CD only" distribution which could make it excellent for recovery or any other purpose which involves needing to have a live CD environment.  Slax is a very clean distribution that can be customized very easily to suit any task.

Parted Magic

Parted Magic is another Linux distribution that is designed to be lightweight and have the necessary components to make it a good recovery disk.  I first found out about this distribution when I used an Ultimate Boot CD which had this operating system variant along with some other environments bundled with it.  Parted magic comes with Gparted for configuring partitions as well as other programs and libraries that are useful for mounting and examining the hard drive of any platform. You are able to mount partitions of Linux-based systems and you can also mount Windows-based partitions, too.  This has been a very useful and versatile variant of Linux when I used it in the workplace.

UBCD4Win

This is the most useful live cd that I have used in the last few years.  It comes bundled with software that is used to scan the hard drive for spyware and viruses such as AntiVir and Spybot.  The virus definitions can be updated before you build the CD which can make the scans more effective.  The CD also has free software that can be used to clean and audit your disk or even your memory.  All these programs can be added to the image or removed from the image.  This live CD is based off BartPE which is a lightweight version of Microsoft Windows.  Within the environment you can read from both Windows and Linux partitions because it has the native Windows read support and special drivers (that can be included in the image) for reading a Linux partition.  When you build a UBCD4Win you will need to have a non-OEM Windows CD or else you get errors when trying to build it.  I have found this CD to be one of the most versatile and helpful live environments I have ever been exposed to.  Because of the familiar programs, it includes (and lets you include) it is simple to use for almost any recovery purpose.

Sunday, February 6, 2011

5h4d0wNews is now up and running

For a while, I have wanted to start some kind of website, web page or blog site that did reviews of free software and other technology that was used for different purposes.  I had seen sites like this before but they were found to be too few and far between here on the internet.  This would be a great undertaking because it would benefit any person that is interested in finding out what programs are out there for a specific task.  It would also benefit me by making me more aware of what is out there, myself.  I was also thinking that at some point I will offer fixes to computer problems (if they come up).

The inspiration for this blog was brought up while I was at work in the IT department that I work at and I was using some of the software utilities that the department had available.  Some of the department's choices for software utilities were not the same as the ones I would have chose because I had been to other places in previous jobs and had been exposed to other programs that did the same thing.  Since there are so many programs out there that do the same things I thought why not review them all (or most of the popular ones) to see which one is the best or which one has what features or what not.

I also figured that I would add fixes to common computer issues, too, so that if you feel brave you can fix many common computer issues by yourself.  This information may or may not become available but be aware that this type of information could be added and would be very beneficial to any readers.

Stay tuned there will be more to come.