Sunday, November 4, 2012

Is Python Really Big Data's 'Secret Power Tool'?


Python is a powerful programing language that AppNexus,’ an online advertising company, considers the “secret power tool” to the success of its big data operations. An AppNexus engineer expressed how the simplicity of the program solved one of the company’s biggest challenges. The difficulty of having a diverse group of employees with different backgrounds working with the same technology proved to be an issue. Python solves this problem. Its easy-to-understand language no longer requires for the company to hire for a specific programing background, because of its simplicity. 


Python has allowed AppNexus to grow in success. AppNexus built a framework that allows them to retrieve data from their technological storing sources by using a simple configuration instead of having to write a database connector code. They can now move code from development to production more quickly. This is because the same code as a prototype can be moved into production with efficiency. AppNexus uses their intern to teach new employees the language, showing how simple and efficient the program is in conducting heavy-duty analysis.

With the pros expressed in the company, there are still drawbacks to Python being a viable enterprise-level programming language. Some issues include the lack of true multiprocessor support and software performance. An example is of the program’s lack of prepackaged solutions. Python does not include a wide range of discussion boards, chat servers, etc. PHP is said to be ahead of Python in this respect, which puts Python at a disadvantage when companies are looking for a solution they can find with PHP.

Database access layer limitation is another issue, because it is underdeveloped compared to other technologies such as ODBC. Again, companies looking for programs that relate well with complex data and work quickly with powerful database access will steer away from Python. So how is a company to know whether or not to go with Python?

One indicator in adopting Python is if a company’s database has a solid Java code base, but is still lacking small apps, and interfaces with that code. If a company is willing to have a few of their coders evaluate Python, this would possibly pay significant benefits in the future because understanding the program will allow the efficient use of the program in operations. With the drawbacks considered, the benefits still may outweigh the drawbacks depending on the company.

Cloud computing with Python is seen in the video below. The video discusses how Python cloud servers are right for businesses. Instead of building servers, premade templates are already made to speed the process. You can also change server hardware configuration at your disposal, because everything is in the users control. These are some of the many benefits mentioned.





There are many valuable aspects to Python’s programing language. With every program there are aspects that may or may not work well with a given company. Depending on the company, Python may be the "secret power tool" to a company's database operations.

Sources:
http://www.infoworld.com/d/big-data/python-big-datas-secret-power-tool-205761
http://www.python.org/
http://www.techrepublic.com/article/python-in-the-enterprise-pros-and-cons/1045768

1 comment:

  1. This Python programming language seems like a great way to get any person, with no extensive programming background, producing usable code. If Python can give more employees at companies simple programming knowledge, much more can be done that otherwise wouldn’t. Efficiency is what all companies strive for, and from the sound of it this adds efficiency in more ways than one. The infoworld article mentions how this helps companies move code from development to production more quickly, and even those with a minor in computer science are able to utilize it. While this is efficient in itself, this technology will be able to keep the educated programmers focused on the more important issues. Companies can hire fewer programmers to cut costs, and have regular employees trained in this language to create prototype code for the head programmer. This is just an example of how a company can use this technology.

    However, I still acknowledge some of the downsides of this programming language. While companies use it to give more employees access to programming, they sacrifice quality. Programmers do not receive high salaries for no reason. They are paid a lot because the knowledge they know in the difficult programming languages is very valuable. While I’m sure Python is good for a smaller business, one producing Python code could most likely not produce the same quality of code that a highly educated computer science programmer would. This trade-off may not be what some companies are looking for, as they value the code that programmers are able to produce.

    Still, the idea of an intern teaching new employees how to use Python is very intriguing. It makes one think how one day, writing code can be much easier than it is now. All of the different syntax rules that must be followed in coding today could disappear in the future. Simplicity is what technology is striving for, so who knows if one day simple Python coding will be able to allow my grandma write code for a website. As time goes on, the programming languages will only get more advanced and be able to do more, but the simple ones like Python will probably be the ones that will be used the most.

    ReplyDelete