|
|
~ 3 Articles per page ~
Pages:
[ 1 ] [ 2 ] [ 3 ]
The Programming Scene
Author: Brendon
Published: 02/06/2010
This is my first article of 2010, so I should start with a belated Happy New Year! And you might wonder what I've been so busy doing for the past month that I couldn't write an article? Well, read the title of this article and take a guess!
I thought it might be interesting to many people to get an update on what's happening in the world of programming today, and perhaps improve your knowledge a little of what programming actually is for those who don't know. I'm not as hot into researching the latest languages and keeping up to date with the hotest trends in programming as I used to be, but as far as I know few things have changed in the matter of programming languages over the past few years. Most people have heard of C/C++ and Java and for those of you who've been around a bit longer you've probably heard of Basic, Fortran, and/or Pascal (most of which are pretty obsolete these days)... and to be honest there haven't been many major breakthroughs or changes since the likes of these languages for the past 10 years. However, there are a lot more languages out there than these which have been popularized through their fame for high income, and there are a lot of very interesting things going on today with these existing languages all the same.
First of all let's get clear on what a programming language is exactly. The lowest level of language which a computer (machine) understands is referred to as assembly language or machine code. This code is very hard to learn, it can be different for each computer, and it would be extremely combersome to try to make a program with. This is where today's modern programming languages come in to save the day. The primary job of a programming language is to translate the hand written orders of a programmer into machine code which will tell the computer what to do. Another thing we should distinguish about a programming language is that it is independent of software. HTML for example is "not" a programming language because it depends upon a web browser, it is a markup language. Actionscript, although it takes programmers skills to understand, is a "scripting language" which is used to create Flash movies, games, and more..., and since it depends on the Flash environment it would also technically not fall under the traditional category of "programming language".
When I started getting into programming, around 1999, I started by learning C++ which was still considered a stable language to learn for someone in the job market. C++ today is actually infamous for being similar to machine code, or in other words very difficult to use. The alleged savior from C++ was meant to be Java, the newest language which was supposed to be more advanced, easier to use, and have more features for a programmer. Some of these things I found to be true, but in all honesty I personally believe a new set of complications came along with Java to replace the frustrations of C++. During this time I was experimenting with a lot of different languages and after a while I found them all to have the same powers, but with time one of them seemed to stand out among the rest for its ease of use, and that was Python.
Now oddly enough, out of all the languages I've mentioned so far, Python is actually the least heard of over a dinner conversation, and surprisingly Python actually has a long history which I believe beats Java by 10 years (check your local Wikipedia for details). The reason Python struck me as such a great language was simple. What took me 5 lines of typing to simply make the word "Hello" appear on my monitor with Java, took 1 line with Python, and Python was faster. Python also was (and still is) the most dynamic language I'd yet to see in the way that it allowed me to play with information and calculations with simple, short, and easy to read code.
The reason that Python was in the shadow of Java at the time (and probably still is) was probably due to the business market of programming which Java (Sun) had taken by the neck. There is in fact still an advantage with Java which Python may or may not be able to compare with in today's programming market. With the history of financial and business backing that Java has it is most likely the language with the greatest set of built in (or downloadable) packages to program just about anything in the world. Thus if you were looking for a language to use to do something as odd as program the scanner at your local supermarket, Java probably already has a package to do this.
Alas, as important as these languages all are in the world today I've actually spent much less time using them to do anything practical. When it comes down to doing business in today's market it would seem that everything is going online. So now after having already learned all of these languages I still had one more to go to make sure that I could keep up with today's market as a programmer. Although Python technically is more than qualified to run web pages and do jobs within a network, and I personally would prefer to use it, you'll simply find yourself in many situations where it isn't supported on the server you're using. This is where we come into the world of popular server-side scripting such as PHP and ASP. Although Python can also be used as a server side script, I kept getting doors slammed in my face when trying to use it on any server space, perhaps because such a powerful language is capable of doing damage when in the wrong hands.
ASP being a Microsoft product is something I won't get into, never have, nor ever will. PHP is the simplest and most supported scripting language for creating dynamic websites in today's world. If I wanted to say within one word what PHP can do, I would probably say "Facebook" as an example. You could just as easily say MySpace, Wikipedia, YouTube, or any other site in existence... although I have no idea what language these sites were created with, but they are an example of the type of thing that PHP can do quickly and painlessly.
-- to be continued...
Browser Wars
Author: Brendon
Published: 11/16/2009

One of the first questions I always get when people find out that I'm a programmer and a web developer is "Can you help me with this virus?" Of course there's no reason to ask me this question because some virus on your computer actually has nothing to do with my work, but I guess it makes sense that a guy who uses computers for a living should know more about them. Anyway, the fact of the matter is that I know very little about virus cures for Windows, and if I were to be honest I would probably tell you that I don't think there is such a thing as security in Windows, which is part of the reason I don't use it.
So anyway, the title of this article is "Browser Wars" and you're probably wondering what I'm ranting on about now. The thing is, I actually do concern myself with computing security very much, and my computer systems have always run 3 or 4 times faster than my neighbor's because I keep my systems clean and virus-free. The first step to keeping a good system like this, in my opinion, is to choose a proper web browser. The second step would be to stop downloading porn and illegally downloading movies and music, but that's another article within itself.
What inspires the conception of this article is simply "Browser Awareness". I'm often shocked to find out that not only do people not care about which browser they use, they actually don't even know the difference between a browser and the internet. A web browser, simply stated, is an application which accesses files on servers and translates the code from these files into web pages and/or web based applications which you can use on your desktop. Or to be more simple, we could just say that a web browser is that thing you open to "see the internet" as some would say.
As most people have Windows installed on their computers by default and Windows comes with IE (Internet Explorer) by default, most people never come to learn about IE's competitors such as Firefox, Google Chrome, Opera and Netscape to name a few. In fact there are dozens of web browsers available today, and 99% of them are completely free to download and install. I personally start off by recommending Firefox because of it's history and track record. Firefox is an Open Source (free) browser which is actually a derivitive of the browser Mozilla. Since these browsers are Open Source they have been worked on, tested, and improved again and again by the Open Source community of developers. For this reason Firefox is a reliable, faster, and more secure web browser which also has a variety of free "plug-ins" which can be added to enhance your browsing experience.
Just recently released is Google's new browser named Chrome. With Google being the mega-giant in the computing world these days it goes without saying that Chrome was bound to be a breakthrough in application technology and everyone has been eager to give it a try. I've heard some very impressive reviews on it regarding speed and ease of use, but I've still yet to switch over for a couple reasons. One major reason is that it doesn't support my Operating System (Linux) and the other reason is in regards to the prementioned history and track record. I didn't need to be a fortune teller to guess that Chrome was going to be unstable for the first year, and that's why I wasn't surprised that on the first time I used Chrome the content editor on my website completely crashed. So even in light of the Godfather tech giants who developed this browser, I'd have to continue recommending Firefox.
It is reported that one of the greatest stunts to Browser Awareness growth is due to Microsoft Window's strategic method of providing only IE as the default browser with their Operating Systems which dominates the market. In 2007 the browser organization Opera filed a complaint against Microsoft in the EU which turned into an Antitrust Investigation against Microsoft. This investigation stated that Microsoft's embedding of the IE browser into their OS created a monopoly which crippled the growth of competitors. There were also claims against IE's blatant disregard for web standards which cause headaches for programmers and developers on a daily basis to this day. 1(reference ars technia)
We can't exactly say why, but when a web developer designs something within any browser except Microsoft's IE, it simply works the way it's supposed to. I generally spend 2 phases of work time when developing web content. Phase 1 is creating it in Firefox, and Phase 2 is trying to figure out why it doesn't work in IE. The answer to the question "why doesn't it work in IE?" is always the same. IE simply doesn't follow the same standard protocols that everyone else in the web community does, they make their own rules as they go along, and as a result we have to spend hours or sometimes days trying to find the "work around" for IE.
There have been so many rants and raves about IE's lack of security, failure to adhere to protocol, and overall buggy behavior that you could probably fill a 20 Gigabyte disk with raw text data on this topic. But all the way up to IE 6 Window's continued to carelessly provide this product "as is" and without any of the advanced features such as tabbed browsing that you find common in all other browsers. I guess it's true that power corrupts and having a monopoly on something makes it easy to get slack.
Adobe, AJAX, AIR
Author: Brendon
Published: 07/18/2009
|
What are these things that begin with the letter "A"? They are all a part of what are some of today's latest web technologies. Adobe, obviously, is the name of a company, a company which is responsible for creating the world's richest internet application platforms amongst other things. When I say application platform, I am refering to the actual software which allows designers and programmers to create applications which people use everyday. One of these platforms which is a common household word, and does not begin with an "A", is Flash.
|

snapshot taken from Adobe AIR's main site
|
Although Flash is probably most famous for the well known financial rewards of a good Flash designer, and all of those addictive Flash games which people play when they should be working, but it's actually a bit more then that. Flash is used in internet applications to create animations, games, and even complex interfaces which run dynamic applications. It also supports the ability to manipulate film, such as the videos you see on Youtube, and with its own scripting code known as Actionscript it can basically be used to make any type of application you could dream of under the sun.
So what about AJAX? Is that another Adobe product such as Flash? Actually, No. In fact AJAX is often compared against Flash in a competitive way. AJAX is another method of creating rich internet applications which doesn't require an Adobe platform to run on, and therefore has nothing to do with Adobe at all, although Adobe might create some applications which help designers to create AJAX applications. But that's another story.
AJAX stands for Asynchronous Javascript And Xml. That's a mouthful, and you probably still can't guess what it means if you don't already know. Basically what AJAX refers to is a web page or website interface which uses a combination of Javascript and a server side programming/scripting language to create some dynamic animations and enhanced content features for the site. An example might be some of the attractive drop down menus you see on some sites, or perhaps some type of content area which seems to automatically update itself with the latest information. One of the greatest benifits of AJAX is that it consists of all "free" platforms and it doesn't require the designer to install a software on their computer in order to create AJAX applications. It also doesn't require the user to install any fancy add-ons or plugins into their browser, as mostly all modern browsers support Javascript. Because of this freedom, AJAX applications are easily created and updated, as long as the designer can access the internet, and users are free from worrying whether or not their browser's plugins are up-to-date.
So we've covered those 2, Flash and AJAX, where does AIR come into this? Of these 3, AIR would be the latest technology which adds a twist to the forementioned Flash and AJAX. AIR is yet another Adobe product which has enhanced the internet and perhaps will be enhancing users internet experience all over the world. To make a long story short, what AIR does is it takes an already existing Flash or AJAX application and turns it into a desktop application. That means that instead of having to open your web browser to go to Gmail or Yahoo Mail, you can just double click and icon on your desktop and BOOM, there you go!
The beauty of this is not just to save you a few clicks. An AIR application has the potential of being used offline as well as online. Thus, after you've downloaded your email to your Gmail AIR application you can still read it when you're on a flight without internet. You can also potentially download an online AIR game and play it in "offline mode" when you're not online. Although, to think of this "not being online", I know is a scarey thought for most of today's people, but it does happen sometimes.
Another benifit of AIR is that it frees you from the browser. Instead of being locked down to some maximized window which doesn't look complete without a slew of advertisement jumping out at you, you can now access some of your favorite online content via a window customized to fit the size of the application you are using.
Read More...
|