Cloud Stuff Prgrm

11
Stack Exchange sign up log in tour help careers 2.0 Stack Overflow Questions Tags Users Badges Unanswered Ask Question Take the 2-minute tour × Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required. Which programming language for cloud computing? [closed] up vote1 5down votefavorite 3 Now that the new cloud computing-era is coming, and I am going to learn to program, I don't know which programming language the clouds support. I think what the support Java, ASP.NET, PHP, Python, Ruby, Perl etc. and not the low-end languages, like C, C++ etc... Or am I wrong? If that is so software companies will have to re-develop their software. Is this the time you can start a project, and you have no big software company as a competitor? I want to know which language I should focus on learning, so that I can develop for the cloud. cloud share |improve this question edited Aug 11 '11 at 14:01 asked 6:54

description

Cloud Stuff Prgrm

Transcript of Cloud Stuff Prgrm

Page 1: Cloud Stuff Prgrm

Stack Exchangesign up

 

log in 

tour 

help  

careers 2.0 

Stack Overflow Questions Tags Users Badges Unanswered Ask Question

Take the 2-minute tour ×Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

Which programming language for cloud computing? [closed]

up vot

e15down votefavorite

3

Now that the new cloud computing-era is coming, and I am going to learn to program, I don't know which programming language the clouds support.

I think what the support Java, ASP.NET, PHP, Python, Ruby, Perl etc. and not the low-end languages, like C, C++ etc... Or am I wrong? If that is so software companies will have to re-develop their software. Is this the time you can start a project, and you have no big software company as a competitor?

I want to know which language I should focus on learning, so that I can develop for the cloud.

cloud

share|improve this question edited Aug 11 '11 at 14:01

cdiggins5,5362845

asked

Anomym86

closed as not constructive by BoltClock♦ Nov 23 '12 at 8:25

Page 2: Cloud Stuff Prgrm

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

add comment

9 Answersactive oldest votes

up vot

e18down vote

+50

"Cloud computing" is more of an operating-system-level concept than a language concept.

Let's say you want to host an application on Amazon's EC2 cloud computing service -- you can develop it in any language you like, on any operating system supported by EC2 (several flavors of Linux, Solaris, and Windows), then install and run it "in the cloud" on one or more virtual machines, much as you would do on a dedicated physical server.

share|improve this answer answered

Jim Lewis18.2k

   Ok, have always thinkt what clouds only use "languages-for-the-web". So wrong as I can have :)at 7:20

""Cloud computing" is more of an operating-system-level concept than a language concept." Not true in IMHO. "The cloud" is a bad term in general but leaving that a side you have cloud services such as Microsoft Azure, Google AppEngine and SalesForce AppForce with support for C#, VB.NET, Java, Python and Apex. Personally I would choose between either C# if you're a windows inclined person or Java. It all depends on what platforms you are targeting for hosting your code or what you are targeting for your end devices. – CosmosKey

@Jim Lewis: Not necessarily correct. You are talking about IAAS (infrastructure as a service). IAAS is not the only kind of cloud. In PAAS (platform as a service) language definitely matters. For example, you need Java for Elastic Beanstalk, C# (or other .NET languages) for Azure and Ruby for Engine Yard. Sometimes PAAS providers support multiple languages, but there is usually a main language/framework/platform. – stepanian Mar 19 '12 at 8:18

   

One should not say '"Cloud computing" is more of an operatin-system-level concept '. Please refer i) NIST (Cloud Computing - National Institute of Standards and Technology) ii) what is cloud is also explained in Wikipedia/IBM tutorials/Amazon/Microsoft Azure sites Understanding of SPI model( SaaS, Paas, IaaS, etc) is required to get clarity on Cloud Computing(simply called as 'cloud'). –  Sree Rama Jan 23 at 5:01 

add comment

Page 3: Cloud Stuff Prgrm

up vot

e7down vote

Of the languages you mention Java, PHP, Python, Ruby, Perl are certainly more platform independent than C/C++ (and ASP.NET).

Lots of platform-specific differences also come from what libraries are available for a given platform.

In practice however, I think you will always develop on the same or at least very similar platform (operating system flavour) as the system where your code will run, i.e. the cloud will not take source code and compile it for you before running it.Personally I would go for Java or Python (probably also Ruby) as they have a vast number of libraries available for all kinds of tasks and are very platform independent.

share|improve this answer answered

Andre Holzner6,141

add commentup vot

e4down vote

As for what programming languages, any browser-based or server-based language is likely to be used. Javascript, PHP, ASP, AJAX, Perl, Java, SQL.

Let's say you need to implement a new programming language and BCL designed specifically for operating in the cloud (it won't be used on client machines ever). It should be optimized for cloud computing; easy to learn, fast, efficient, powerful, modern.

The biggest way i’ve seen cloud hosting products help out developers is the ability to launch and increase the size of a server, without having any kind of delay. Developers are able to create the application in a completely customized environment, and then expand it into a production machine with a significant hassle. If things don’t work as wanted, they can then destroy that machine with relative ease.

Most of the Cloud Computing Providers used JAVA and C-Sharp, to make cloud server.

share|improve this answer answered

john

Page 4: Cloud Stuff Prgrm

4112  Well, AJAX is not a language... –  Ottavio Campana Nov 22 '12 at 8:04

add commentup vot

e3down vote

That is a very interesting question.

On the Lang.Next conference there was a very interesting discussion about this topic, in which authors of several programming languages participate (Scala, Dart, C#). There was not a clear consensus at the end, but from my point of view there is one message:The ideal language for this "cloud age" should be object oriented (because that is how we understand and are able to model the world) and also embrace functional programming.

The code in "cloud age" is almost always distributed: running on several cores/machines (in the cloud center) or just the client/server separation. And it is also asynchronous. We do not block the code when waiting for WS response. The callbacks come in any time.

When using standard imperative programming languages, handling the asynchrony and the distribution really complicated. You have to always take care of the "current state" and when the callbacks come in, you have to decide what to do, in dependences of this state.

Functional programming helps to eliminate the "state" and is much better suited for this new situation.

So I would say: In cloud computing the code is distributed, state-less, asynchronous. Functional programming can help you with that. Object oriented is almost a must to be able to model the world.

I have wrote a blog post about it, if you are interested. I like C#, but actually I would say Scala, Clojure, F# might fit even better.On the other hand C++ will always be there, and lately is being modernized and getting more attention.

share|improve this answer answered

hoonzis516

add commentup vot

e1down vote

Your question is a bit vague about what you are actually thinking about doing. "Cloud computing" can mean almost anything. If you're looking for languages with specific cloud computing advantages, Java has several because it's a compiled language that compiles to operating-system independent byte code.

I also chime in with the others about C++ being a low-level language. Yes, it is. But you're

Page 5: Cloud Stuff Prgrm

always going to have more than just the C++ language. If you separate both Java and C++ from the classes that come with them, Java and C++ are extremely similar. You have to adopt some rigid criterion like "pointers = low-level, garbage collection = high-level" to make the distinction stick. (And, of course, you can make pointers smart and invisible in C++ and you can use garbage collection in C++ too if you want to.)

share|improve this answer answered

David Schwartz68.8k

add commentup vot

e1down vote

Depends on which "cloud" you would want to use. If it is Google App Engine, you can use Java or Python. Groovy too is supported on Google App Engine which runs on jvm. If you are going with Amazon, you can pretty much install any OS (Amazon Machine Images) you would like with any application server and use any language depending on the application servers support for the language. But doing something like that would mean a lot of technical understanding of scalability concepts. Some of the services might be provided off the shelf like DB services, storage etc. I heard about ruby and Heroku (another cloud application platform). But dont have experience with it.

Personally I prefer Java/Groovy for such things because of the vast libraries and tools available.

share|improve this answer answered

Kalyan6817

add commentup vot

e1down vote

This is always fascinating. I am not a cloud developer, but based on my research there is nothing significantly different than what many of us have been doing off and on for decades. The server is platform specific. If you want to write platform agnostic code for your server that is fine, but unnecessary based on whoever your cloud server provider is. I think the biggest difference I've seen so far is the concept of providing a large set of services for the front end client to process. the front end, I'm assuming is predominantly web or web app development. As most browsers can handle LAMP vs Microsoft stack well enough, then you are still back to whatever your flavor of the month is. The only difference I truly am seeing from what I did 20 years ago in a highly distributed network environment are higher level protocol (HTTP vs. TCP/UDP). Maybe I am wrong and would welcome the education, but then again I've been doing this a long time and still have not seen anything I would

Page 6: Cloud Stuff Prgrm

consider revolutionary or significantly different, though languages like Java, C#, Python, Ruby, etc are significantly simpler to program in which is a mixed bag as the bar is lowered for those are are not familiar with writing optimized code. PAAS and SAAS to me seem to be some of the keys in the new technology, but been doing some of this to off and on for 20 years :)

share|improve this answer answered

Greg B111

add commentup vot

e0down vote

Obviously there is no "better" -- or more worth learning -- language at all. Which language you use is is just a matter of what you like AND what your server supports. You should not learn a language that wouldn't be supported by any server or is said to be dying in the near future. On the other hand it is obvious too that there will be even better languages in the future and that those will be more useful. So learn one that is fast, convenient and that you like and where learning it wouldn't be a too big effort because, as said, you're likely to change in less than 3 years.

I, personally would be considering an "open-source" (not proprietary) one, because the web is open to everyone and open-source is more likely to be supported by every-one. (Which means PHP in this case)

share|improve this answer answered

MrRap112

add comment

up vote-5down

vote

You Should learn COBOL and RPG. When the whole world had gone to the Cloud (literally -- the whole CORE IT support team has vanished) who is going to maintain the billion lines of proprietary codes that process zillions of daily transactions for banks, utility and government entity? Long live the infamous green screen. We'll see you on the cloud.

share|improve this answer answered

Poor Uncle

Page 7: Cloud Stuff Prgrm

51  This sounds more like a rant about the state of modern computing than an answer. –  jadarnel27

   

@jadarnel27 You missunderstood my answer. It's really not a rant. When all the current I.T. staff are gone, billion lines of COBOL and RPG proprietary codes will still be around..and someone still needs to maintain them.19 '12 at 20:33

add commentNot the answer you're looking for? Browse other questions tagged cloud or ask your own question.asked 3 years agoviewed 41487 timesactive 1 year ago

Related

41Why would you not want to use Cloud Computing

4What is cloud computing?

0thesis on cloud computing

1cloud computing with Python 3

2programming wrt cloud computing

1Generic Software Architecture of Cloud Computing Platforms

2resource for scheduling algorithms in cloud computing

1

Page 8: Cloud Stuff Prgrm

Can we create Cloud server in single Pc (for a learning purpose)

0Required cloud solution to synchronize Desktop database

0how to implement Java program in cloud computing??I

Hot Network Questions Why does the Weasleys' clock have a dentist setting? Can one insure a home's AC unit? Iterating over all features in featureclass to intersect them individually with polygon using

ArcPy? Alternate picking vs down picking Why should a (physical) principle be applicable to different systems in different positions in

space and time? Must I reference resources for definitions I express with my own words? How can i discourage employees from working voluntary overtime? PhD in Europe without scholarship from non-European homeland What are some considerations before moving personal data to Google Drive? Is there a good way to say "as a side note", "as an aside" in a conversation? Fractional exponents - adding the exponent? smooth quotient out of a singular variety? How can metals like magnesium and sodium burn underwater? Why did a creeper start to explode and suddenly stop? Best python library for neural networks Having problems within development team re approach problem with "crop circles" in tikz knot library Basic timer from one minute to 0 Dealing with multiple licenses Will Playing a Guitar Through a Bass Set-Up Damage the Amplifier and/or Speaker? Do verb tenses have to remain absolutely consistent through a piece of writing? Why do people lose in chess? Straighten bezier curve? What permissions do I need to write to a card reader?

tour help badges blog chat data legal privacy policy work here advertising info mobile contact

us feedback

TECHNOLOGY LIFE / ARTS CULTURE / RECREATI

SCIENCE OTHER

Page 9: Cloud Stuff Prgrm

ON

Stack OverflowServer Fault Super User Web ApplicationsAsk Ubuntu Webmasters Game DevelopmentTeX - LaTeX

Programmers Unix & Linux Ask Different (Apple)WordPress DevelopmentGeographic Information SystemsElectrical EngineeringAndroid EnthusiastsInformation Security

Database AdministratorsDrupal AnswersSharePoint User ExperienceMathematica more (14)

Photography Science Fiction & FantasyGraphic DesignSeasoned Advice (cooking)Home ImprovementPersonal Finance & MoneyAcademia more (10)

English Language & UsageSkeptics Mi Yodeya (Judaism)Travel Christianity Arqade (gaming)Bicycles Role-playing Gamesmore (21)

Mathematics Cross Validated (stats)Theoretical Computer SciencePhysics MathOverflow more (7)

Stack AppsMeta Stack ExchangeArea 51 Stack Overflow Careers

site design / logo © 2014 stack exchange inc; user contributions licensed under cc by-sa 3.0 with attribution requiredrev 2014.7.3.1691