Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

We are sorry to see you leave - Beta is different and we value the time you took to try it out. Before you decide to go, please take a look at some value-adds for Beta and learn more about it. Thank you for reading Slashdot, and for making the site better!

Google Engineer: We Need More Web Programming Languages

timothy posted about 5 months ago | from the ok-make-it-a-1001-flowers dept.

Programming 309

itwbennett (1594911) writes Web applications may one day surpass desktop applications in function and usability — if developers have more programming languages to choose from, according to a Google engineer. 'The Web is always available, except when it is not,' said Gilad Bracha, software engineer at Google and one of the authors of Google Dart, speaking to an audience of programmers Wednesday at the QCon developer conference in New York. 'It isn't always available in a way that you can always rely on it. You may have a network that is slow or flaky or someone may want to charge you.' Therefore any Web programming language, and its associated ecosystem, must have some way of storing a program for offline use, Bracha said. The Web programming language of the future must also make it easier for the programmer to build and test applications.

Sorry! There are no comments related to the filter you selected.

Why? (4, Insightful)

Anonymous Coward | about 5 months ago | (#47221465)

any Web programming language, and its associated ecosystem, must have some way of storing a program for offline use

So what's the point of this being a "Web" language? Why not just keep downloading apps like we always have?

Re:Why? (0)

Grow Old Timber (1071718) | about 5 months ago | (#47221473)

Containment...period

Re:Why? (1)

JMJimmy (2036122) | about 5 months ago | (#47221839)

Except once it's offline it's no longer contained...

Containment by default (4, Informative)

tepples (727027) | about 5 months ago | (#47222171)

Except once it's offline it's no longer contained...

How? Pretty much every major platform other than Windows desktop, OS X, and GNU/Linux has some sort of containment measure by default. This includes Windows Phone, Windows RT and Windows 8's WinRT subsystem, Android, iOS, and modern game consoles.

Re:Why? (1)

K. S. Kyosuke (729550) | about 5 months ago | (#47221921)

Note that Gilad Bracha is working on Newspeak [newspeaklanguage.org] , which will probably be as close to an ideal web language as one could hope for - once it's finished - and not only in the matter of containment.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47222005)

They could have picked a much better name than that.

CAPTCHA: ominous

Re: Why? (4, Funny)

jd2112 (1535857) | about 5 months ago | (#47222011)

The API of the current version is quite large, but the next release will be smaller. By version 2.0 they expect to have it down to a few pages.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47222069)

I will disregard your comment based on that you ended it with "period".
Never have I seen a discussion end with someone stating that and more often than not it is stated by someone who is unable to sufficiently motivate his point.

Re:Why? (1)

mwvdlee (775178) | about 5 months ago | (#47221481)

Isn't Phonegap/Cordova effectively for making downloadable, offline web applications?

Re:Why? (1)

mlk (18543) | about 5 months ago | (#47221827)

And Google Chrome. ;)

But Phonegap/Cordova are part of the the "proprietary app stores" ecosystem which "will come and eat us all."

Re: Why? (1)

tom229 (1640685) | about 5 months ago | (#47221905)

Your sarcasm is concerning. You should be far less eager to support that level of restrictive control.

Re:Why? (0)

buchner.johannes (1139593) | about 5 months ago | (#47221485)

1. Portability to devices of various sizes and OSs
2. Ease of Accessibility for the end user
3. Security - Attack Vector of installing software

Re:Why? (-1)

Anonymous Coward | about 5 months ago | (#47221539)

1. Portability to devices of various sizes and OSs

1. I use only one platform would I care that it runs on other OSs?
2. If it's able to run on every platform that means the app can only use the subset of features that every one shares crippling its potential.

2. Ease of Accessibility for the end user

Click the icon on an app that I have downloaded is far more accessible than having to start my web browser, then navigating to the web app.

3. Security - Attack Vector of installing software

Most attacks come through your web browser not installed software.

Re:Why? (1)

jythie (914043) | about 5 months ago | (#47221923)

Thus begins testing hell....

And now I have to go mutter quietly about wxWidgets.....

Re:Why? (1)

Anonymous Coward | about 5 months ago | (#47222061)

1. Portability to devices of various sizes and OSs

1. I use only one platform would I care that it runs on other OSs?

The developer cares. Likely, (s)he wants to reach several major OSs, and a more-or-less common platform makes it more economical.

2. If it's able to run on every platform that means the app can only use the subset of features that every one shares crippling its potential.

So we need rich(er) Web platforms. They may never do everything that native apps can, but the wider choice of platforms and increased accessibility (explanation below) may be worth it. Alternatively, the developer will have to code flexible apps that adapt to the browser's capabilities, which is still easier than coding across operating systems.

2. Ease of Accessibility for the end user

Click the icon on an app that I have downloaded is far more accessible than having to start my web browser, then navigating to the web app.

Accessibility in the sense of being able to use my app (and my data) at home, at work, while riding the train; webmail is a classic example. More privacy sensitive applications may use encrypted online storage.

3. Security - Attack Vector of installing software

Most attacks come through your web browser not installed software.

Most attacks come through a website (likely not the one hosting the app) delivering and installing software to your machine surreptitiously (poor sandboxing) or with the user's cooperation ("social engineering"). Since the malicious sites will still be around, moving some native apps to the Web won't make a difference. In other words, replacing Eudora with hotmail.com didn't bring an extra vector (if anything, it's one less executable that can be downloaded from a shady site/torrent that bundles malware).

- arielCo (995647)
(Posting AC to preserve my mods - I'll check for replies)

Re:Why? (1)

NotDrWho (3543773) | about 5 months ago | (#47221573)

So what's the point of this being a "Web" language?

The make Chrome even more attractive when Google introduces their new web language?

Re:Why? (1)

Vyse of Arcadia (1220278) | about 5 months ago | (#47221605)

Genuine question, here, since I've never done any web dev. Why not write libraries in an existing language that spit out HTML/Javascript/PHP/whatever? Why do we need a new language to do this?

It sounds more like Google needs not a new language for this intended use, but some sort of new browser plugin that handles offline storage of web apps. I really don't get the emphasis on new language here.

Re:Why? (1)

smitty_one_each (243267) | about 5 months ago | (#47221675)

Why do we need a new language to do this?

About the only no-kidding value added of a new language is brushing aside the older cruft. But Imma still beat you down with my FORTRAN prowess in whatever you implement, so, neener neener neener, Mike Foxtrot.

Re:Why? (5, Informative)

putaro (235078) | about 5 months ago | (#47221683)

Those do exist, for example Google Web Toolkit (GWT) which spits out Javascript and HTML from Java code that you write and manages the communications between the Javascript in the web page and the Java code running on the server. There are difficulties, though, because Javascript and HTML are really kind of sucky for running GUIs and it takes tweaking to get everything looking good in every browser.

Personally, I think that running complex applications inside the browser is just plain stupid but it keeps on getting pushed at us.

Re:Why? (2)

drinkypoo (153816) | about 5 months ago | (#47221965)

Personally, I think that running complex applications inside the browser is just plain stupid but it keeps on getting pushed at us.

The obvious answer is to make the browser better at running complex applications. There is obviously a need for a browser which can run complex applications.

Re:Why? (5, Insightful)

jythie (914043) | about 5 months ago | (#47221933)

Because developing new languages and ecosystems is fun, sexy, and gets you attention. Working in old fuddy languages with rich existing support requires reading books and bowing to other people who have already figured problems out. Bad for the ego.

Re:Why? (1)

Shortguy881 (2883333) | about 5 months ago | (#47221987)

Because clearly there are no languages that do that already....

List of languages [wikipedia.org]

GIVE US MORE!

Re:Why? (1)

TheSunborn (68004) | about 5 months ago | (#47221993)

There are already such translaters.

I am using GWT(Google webtoolkit) which take java code, and compiles it to javascript which can run in a browser.

 

Re:Why? (1)

neoform (551705) | about 5 months ago | (#47222017)

PHP is a server-side language. No one spits out PHP, PHP is used to generate HTML.

Re:Why? (2)

Chelloveck (14643) | about 5 months ago | (#47222029)

Genuine question, here, since I've never done any web dev. Why not write libraries in an existing language that spit out HTML/Javascript/PHP/whatever? Why do we need a new language to do this?

On the server side it's already pretty easy to use whatever language you want. There's the CGI protocol that gives a well defined interface between the server and any arbitrary program running as its own process. Most servers also have a way to run code in written various languages directly without the overhead of spawning a new process to do it.

On the browser side you have Javascript and... Well, that's about it really, unless you want to rely on browser plugins. Some browsers on some platforms can handle other scripting languages, but they tend to be vendor-specific like VBScript. If you load a browser plugin you can do anything you want, but it's not going to be all that portable. And, as we've seen with Flash and Java, they can open up new and interesting security holes.

Javascript itself is kind of a mess. It's inconsistent and has a lot of pitfalls that can trip up the unwary. I don't think we need more languages necessarily, but we could certainly use one good language. Of course, you'll never get developers to agree on what that good language is, and by the time it makes its way through the standards committee it's going to look an awful lot like Javascript. The big problem with defining a new language is that it needs to be in all the browsers before it's useful to developers. Developers won't adopt a language that's not widely deployed in browsers, and browser vendors won't bother to implement a language unless there is a critical mass of developers for it. So at this point we're pretty much stuck with Javascript.

Microsoft actually had a good idea at one time, which was to define an interface between the browser and an arbitrary external scripting language. You could (and probably still can) write Perl or Python code and execute it within Internet Explorer just like Javascript or VBScript. Of course that required the user to install the particular language you wanted, and calling out to an arbitrary external language opened up a ton of security holes. It wasn't very useful for web-based scripting. It was pretty good if you wanted an easy way to add a GUI to a local script, though. I used it to write a few quick-and-dirty prototype apps in Perl with an HTML GUI about 10 years ago. In fact it was good enough that I had a hell of a time convincing our sales guys that it was not a finished product they could sell.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47221629)

I propose some form of C like language, which will allow developers to pick it up and use it quickly. Obviously as this is the web, it should compile to a virtual machine bytecode that can run on top of any virtual machine implementation. Developers could then make these applications, or "applets", available from their website. If users wished to keep a copy of the "applet" they could simply download it, and run it whenever they wish.

I think this idea has a great future and will revolutionise the web. In 1997.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47221929)

I am going to go out on a limb here and go a step further:

Why not an Ada-type of language that can be used to have provable security, strong typing, bounds checking, and many other useful items. Web apps should be secure, so maybe it might be good to have a language that has some sort of sanity built in

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47221677)

It sounds to me like they aren't talking about "web" programming languages anymore when they mention "for offline use". This is just a network aware VM and who freakin' cares about the language. This sounds very much like Java Web Start, but replace Swing with HTML. Or an "app", but replace the layout framework with HTML.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47221835)

ugh, god, I look at HTML/XML and my eyes glaze over. Swing UIs may be ugly by default, but god damn at least they're implemented in the same language that controls them.

Re:Why? (1)

alen (225700) | about 5 months ago | (#47221761)

how else can google track everything you do?

Re:Why? (1)

Qwertie (797303) | about 5 months ago | (#47221815)

It shouldn't just be a web language.

Developers shouldn't have to choose between "code that runs in a browser" and "code that runs on a server". They shouldn't have to choose between "code that runs in a browser" and "code that runs fast". They shouldn't have to choose between "code that runs in a browser" and static typing, or macro systems, or aspect-oriented programming, or parallelizable code, or whatever.

The problem as I see it is that the "browser languages" are dictated "from on high" by makers of browsers like Google and Mozilla. But "non-web" languages continue to proliferate, and the "perfect" language has not yet been found, so I think browsers should get out of the business of dictating language choices. I do think, however, that they should get into the business of promoting language freedom and (because there are so many languages) interoperability between languages.

What I'd like to see is a new VM that is specifically designed to run a wide variety of languages with high performance [blogspot.ca] , in contrast to the Java VM which was designed for one language (and not for high performance), and the CLR which was designed for a few specific languages (C#, VB, C++) but turns out to be unable to handle key features of many other languages. The CLR wouldn't support D or Go very well and probably not Rust either; for example, there are two general-purpose pointer types in the CLR: one type can point to the GC heap and one type can point to non-GC "native" heaps, but you cannot have a pointer that can point "anywhere", which is a feature D requires. So we should create a new VM, which
  • should contain a variety of flexible primitives so that the core features of all known languages can be supported in principle
  • should be high-performance, like Google NaCl. Some people need high performance, there's no doubt about it or way around it.
  • should use a bytecode that is designed for optimization (LLVM bitcode seems like a reasonable starting point), but is non-obfuscated (fully decompilable) by default.
  • should allow and support garbage collection (but not *require* GC-based memory management)
  • should allow multiple threads
  • should be designed to allow code from different languages to communicate easily
  • should have a standard library of data types to promote interoperability between programming languages, and avoid the need to download a large standard library from server to client

Some people believe that the web has become a kind of operating system, but I think this reflects more the way people want to use it rather than the technological reality. Right now a browser is sort of a gimpy operating system that supports only one language and one thread per page. Real OSs support any programming language. Why not the web browser?

Re:Why? (2)

jythie (914043) | about 5 months ago | (#47221961)

The quest for a 'perfect' language generally just results in people taking perfectly good languages and complicating them to the point they start handling their intended function worse and worse.

Yes, developers SHOULD have to choose. When you are dealing with drastically different contexts and environments there are going to be trade offs. We could potentially make languages look the same through similar syntax, but they are not going to be the same language and should not be.

As for why the browser only supporting one language, well, because it is simpler. Operating systems only support one language too, machine code. Everything else is translated into that language in order to run.

Re:Why? (0)

Anonymous Coward | about 5 months ago | (#47221899)

Companies can't (as easilly) own you and your data if the program runs locally on just opens network connections to do its web/online work. And they can't as easilly take your money (continously via subscription, holding your data hostage to keep you paying) and pull services and features away on a whim either.

Re:Why? (1)

jythie (914043) | about 5 months ago | (#47221911)

It is almost like they want a language that uses some kind of VM so it can either be run inside a web page or as a stand along executable, possibly with good network support for interacting with remote servers. Someone should create a language like that.

Re:Why? (1)

Qwertie (797303) | about 5 months ago | (#47222041)

So what's the point of this being a "Web" language? Why not just keep downloading apps like we always have?

The advantage of "web" languages over OS-native languages is that "web" code runs on any operating system. That's a pretty big advantage from a developer's perspective! Plus, the web traditionally has built-in security features to minimize what script code can "get away with", a tradition that one hopes could continue with "offline" web apps.

But Google's NaCl has demonstrated that, in principle, any programming language could run inside a browser. So why not offer the advantages of "web languages" without actually mandating any specific language [slashdot.org] ?

Re:Why? (0)

wisnoskij (1206448) | about 5 months ago | (#47222043)

I think the stupid thing in that sentence is "any".

What is the point of more languages, if they all must be built to act exactly the same?

Re:Why? (1)

Dcnjoe60 (682885) | about 5 months ago | (#47222115)

any Web programming language, and its associated ecosystem, must have some way of storing a program for offline use

So what's the point of this being a "Web" language? Why not just keep downloading apps like we always have?

It's harder to monetize that way. Buy software for $295 and use it for 10 years, company gets $295. Buy the web version for only $50/year and the company makes $500 over the same period. From the consumer (whether a business or individual), there is the appearance of a lower cost of entry. For the vendor, there is a steady revenue source and increased profits.

It's like the difference between purchasing a new car and leasing one. If the consumer's goal is to always have a new car, leases work great. If the consumer's goal is to have a low cost of ownership, however, then a lease is definitely not the way to go. Now as related to what this article is about, instead of leases, think of software as a subscription service.

Nooooo (0)

Anonymous Coward | about 5 months ago | (#47221475)

Please no, no more web languages!

No, we don't (1, Insightful)

BenJeremy (181303) | about 5 months ago | (#47221491)

There are far too many choices now. Most of them only differ in minor semantics, but it is enough that it makes porting already well-designed code a pain. It also muddles education and opens opportunities for countless security holes through exploits.

What we need is a "golden ideal" language - which may not be possible, but if we could whittle it down to three or four special purpose languages, optimized for specific uses, and a solid general-purpose language, we'd have an ecosystem worth contributing to and using.

Re:No, we don't (5, Funny)

mwvdlee (775178) | about 5 months ago | (#47221513)

There are far too many choices now.

JavaScript and VBScript.
I agree there is atleast one choice too many.

Re:No, we don't (1)

BenJeremy (181303) | about 5 months ago | (#47221707)

Well, mentally, I was kind of lumping in a lot more, like server-side languages and the many scripting languages used to create binaries for mobile apps and such.

My point was, why not continue the improvements to something like Javascript?

As for VBScript, that is an abomination that should have been banned from the web a decade ago. When it comes to "BASIC" Microsoft seems to have an unhealthy, co-dependant relationship with it.

Re:No, we don't (0)

Anonymous Coward | about 5 months ago | (#47222099)

There are far too many choices now.

JavaScript and VBScript.
I agree there is atleast one choice too many.

and its not JavaScript

Re:No, we don't (3, Insightful)

MatthiasF (1853064) | about 5 months ago | (#47221565)

A Google engineer that designed a web language no one wants to use much less need, gives a talk about how the web needs more languages.

Part of me wants to think the guy is just nuts but this is starting to seem like a trend from Google.

They try to create a many options/products as possible to weaken established standards and then take them over with half-assed efforts that never work out.

Re:No, we don't (1)

jellomizer (103300) | about 5 months ago | (#47221625)

It isn't that Dart isn't what we want or need. The issue is that Google doesn't have a good track record for a long term support of a technology. Google will need to support Dart when it isn't even cool anymore.
I am still running into old ASP (Not .NET) apps, things with ActiveX controls, Old C based CGI apps. In the non web front, I have recently had to deal with FORTRAN 77 and COBOL.

A lot of this stuff may not be popular, but some apps have a long life, and needs to be maintained.
Google has a track record of dumping ideas that don't get to be super popular. So people will avoid them, as they may not get support for their app across its product live cycle.

Re:No, we don't (1)

cyber-vandal (148830) | about 5 months ago | (#47221633)

Like what?

Re:No, we don't (1)

NatasRevol (731260) | about 5 months ago | (#47221843)

That sounds like another company who started doing that about 30 years ago. Micro something. Can't quite put my tongue on it.

Re:No, we don't (0)

Anonymous Coward | about 5 months ago | (#47222031)

No, very much sane. They want more "data centric" programming languages, not CPU or GPU centric programming languages.

Look at all those languages that popped out of nowhere for "Big Data", Hadoop, ECL, R

http://en.wikipedia.org/wiki/Data-centric_programming_language

They are like SQL queries, but able to handle databases in two separate formats. Then again, perhaps he just wants to make sure he has a long term revenue stream from writing books, organizing talks, being on committees, has a Twitter following and so on...

Re:No, we don't (1, Informative)

jellomizer (103300) | about 5 months ago | (#47221591)

Main Web Languages Server side...

PHP - While there is a windows port this is for the Linux Guys
JSP - For people who wants to pretend that their web app is a serious business application.
ASP.NET - For the people stuck on a windows network.

They all have different levels of suckyness. They were made for web pages a over decade old. Where most stuff was Server Side processing.

Browser side
JavaScipt
VBScript

Re:No, we don't (0)

Anonymous Coward | about 5 months ago | (#47221891)

VBscript?

Go fuck yourself.

Re:No, we don't (2)

SirGeek (120712) | about 5 months ago | (#47221635)

I thought that was what Java was "supposed" to be. Write Once, Run anywhere ?

Oh yeah.. That's right... 99% of programmers ONLY write for their target... Use libraries designed for their preferred target and can't even bother to test the damned thing...

And I've been programming around 33 years (As a professional for about 25) so just a "little" familiar with what happens because of "I have this Tool (hammer) so every problem must be solved with it (everything = nail).

Re:No, we don't (4, Interesting)

PRMan (959735) | about 5 months ago | (#47222167)

Yep, and even if you use the correct tool for the job people rewrite it anyway. I used XSLT to turn XML into a different XML. It was 20 lines and worked great. I came back later and somebody had replaced it with 2500 lines of C#.

Re: No, we don't (0)

Anonymous Coward | about 5 months ago | (#47222179)

No offense, but if it runs on my target, my boss cuts the check. That's the carrot. If it runs on everyone's target system, I get to deal with an interweb full of people who want free support. That's the stick.

Re:No, we don't (-1)

Anonymous Coward | about 5 months ago | (#47221671)

What we need is a "golden ideal" language

You've already got it, HTML. All the rest are ugly ways to twist and distort HTML to make it more offensive and full of advertisements.

Ok, that was a bit harsh, some of the extensions are used because the page in question actually needs it for the intended functionality, but most of them are just to give contact hooks for advertisers to troll the viewers.

Re:No, we don't (1)

bluefoxlucid (723572) | about 5 months ago | (#47221887)

Python with web.dom?

useless buzzword for marketing only (2)

sageres (561626) | about 5 months ago | (#47221529)

"Web programming language is a buzzword that I heard before since 1994-1995 over and over and over and over and over again. Here is one joke about one of the "Web programming languages" from that era:

--Knock knock!
--Who is there?
--... (wait one minute before replying... And then:) Java!

But for some reason, every declared "web programming language" seem to not having universal adoption.
Question is: Why, and why are they talking about it again and again?

Re:useless buzzword for marketing only (0)

Anonymous Coward | about 5 months ago | (#47221555)

Question is: Why, and why are they talking about it again and again?

Those that do not learn from history are doomed to repeat it.

Translation (3, Funny)

NotDrWho (3543773) | about 5 months ago | (#47221549)

Translation: Google is about to introduce yet another web language into this Tower of Babel

Re:Translation (5, Funny)

NatasRevol (731260) | about 5 months ago | (#47221895)

It should be called the Tower of Babbage.

What is needed... (1)

Anonymous Coward | about 5 months ago | (#47221559)

Is to ditch the idiotic idea of trying to bolt a scripting language onto a layout language to build interactive applications.

Re:What is needed... (3, Insightful)

jones_supa (887896) | about 5 months ago | (#47221673)

Yeah, I agree. The first thing to do would be to reinvent the web browser. I guess HTML would still suit for displaying static content, but all the interactive stuff is like rockets duct-taped on a stone-age sleigh.

Re:What is needed... (0)

Anonymous Coward | about 5 months ago | (#47222077)

You mean CSS for displaying static content? HTML shouldn't be used for presentation.

Java? (0)

Anonymous Coward | about 5 months ago | (#47221561)

Why not let the web do what the web is good at and regular desktop environments do what they're good at? What's funny to me is how what these "web engineers" seem to be describing is Java, so why not just implement a browser in Java that can run Java-web-app code for its page/interface functionality? Java has the notion of security built into its core, so as long as you set that up properly, you should be able to safely and securely sandbox web-downloaded code, right?

Re:Java? (0)

Anonymous Coward | about 5 months ago | (#47222121)

Java is and always has been a poor choice for rapid development of user interfaces. Plus Google and Oracle are blood enemies.

Shoot him (0)

smooth wombat (796938) | about 5 months ago | (#47221581)

Anyone who thinks there aren't enough languages shouldn't be shot on sight. No exceptions.

What we need are people who are more interested in developing quality software, which works, without thinking they need to be on the bleeding edge of technology. Look at how horrible the web has become because people thought they were being hip and edgy by making continuous scrolling web sites or slide out menu options.

If you make a robust site, or application, you won't need to worry about needing the latest and greatest because it will just work.

Further, trying to claim that desktop applications are usable is a joke in itself. Just like web sites, developers, and the companies they work for, think throwing eye candy at the user is what is needed. As a result, one is constantly fighting the application because it thinks it knows what you are trying to do and tries to be "helpful" when all it's doing is getting in the way. Automatic tabs in Word anyone?

This is just another example of people in the industry being out of touch with reality. Maybe if they would spend more time out of their cube watching how real people perform their work,and how today's systems perform, we wouldn't have to hear about this nonsense every other week.

Re:Shoot him (0)

Anonymous Coward | about 5 months ago | (#47221631)

Look at how horrible the web has become because people thought they were being hip and edgy by making continuous scrolling web sites

Every person that makes a continuous scrolling mobile website, where the control to make it the desktop site is at the bottom of the page, needs to be shot. Continuously!

Re:Shoot him (1)

Charliemopps (1157495) | about 5 months ago | (#47221697)

Anyone who thinks there aren't enough languages shouldn't be shot on sight.

Then shoot me first I guess. There's nothing wrong with more languages. The more tools you have to solve a problem the better off you are. There's nothing more annoying than working on a project with someone that only knows 1 language.
"Well, you can't do that in JavaScript!"
ok, do it in something else
"huh?"

Re:Shoot him (1)

smooth wombat (796938) | about 5 months ago | (#47221831)

The more tools you have to solve a problem the better off you are.

When there are too many tools you spend more time trying to find one that works rather than getting on with completing the job.

There's nothing more annoying than working on a project with someone that only knows 1 language.

Which has nothing to do with having more languages. That is a person who hasn't learned to use any other language.

Re:Shoot him (0)

Anonymous Coward | about 5 months ago | (#47222151)

No, it truely comes down to the best tool for the job. For instance Puppet is an expressive turing complete DSL language for system configuration. One could code the fibonacci principal in it, however that is not where its strengths lie, it would take a couple of hundred lines as opposed to python where one could code it in 5. On the other hand, Python, even when Salt Stacks considered, is not the best language for configuring groups of systems. Only for one off daemons and web front ends. One would probably not want to code a website in C or Assembly for that matter as another example when PHP/Ruby/Python are all clearly better suited for those tasks with regards to their libraries/frameworks.

Some guy incidentally wrote the fibonacci principal in Puppet and in Python, as a method of comparison, you can check it out here.
http://www.gluster.org/category/recursion/

Re:Shoot him (0)

Anonymous Coward | about 5 months ago | (#47222125)

there aren't enough languages... ;-]

Re:Shoot him (1)

Grishnakh (216268) | about 5 months ago | (#47222143)

This is just another example of people in the industry being out of touch with reality. Maybe if they would spend more time out of their cube watching how real people perform their work,

Where are these "cubes" (short for "cubicle") you speak of? I haven't seen a cubicle in over a decade now. Every workplace has moved to "open-plan work areas". Sometimes they still call them "cubes", but if you can see over the wall while seated, it's not a cubicle, it's open-plan.

You complain about "people in the industry"; I contend that industry was much better back when engineers actually sat in cubicles, or better yet, offices.

localstorage (0)

Anonymous Coward | about 5 months ago | (#47221601)

So, uh, localstorage? Yeah, that thing is marvellous.

The problem with localStorage is the key:pair nonsense method of storing.
If you want to store anything else, you will need to convert it to store it in there, be it base64ing, JSONing or whatever else-ing.

There is also the offline stuff that doesn't seem to be getting any love either.
I remember GOOGLE (who'da thunk it) made gears to test out offline mode and localstorage with Gears, then dropped it, then offline mode sorta.. vanished.
Now the only way to do it is install a damn extension. Seriously? Why is that?
The problem is App Cache is awful as hell to work with. (even worse because it requires messing around with yet another MIME type. STOP that already, fuck)

What needs to be done is JAVASCRIPT needs to be standardized in regards to dealing with data regardless of it being on or offline.
There should be a system of accessing data, which will check if there is an internet connection (which will be held in a variable that you define via an active connection, which will fail after a period if it can't get any reply, like always), if it can't access that connection, it will check the local storage.
The manifest crap should be ditched and replaced with something far more streamlined.
JS is already there, it is just awful to work with because it has just been piled on top without any reasonable thought to the use-cases defined in them, which is pretty stupid.
The entire local storage spec needs revisin'. That is everything, app caches, session, local and every other storage method. It is an inconsistent mess. AGAIN.

The good thing about standards... (5, Funny)

menkhaura (103150) | about 5 months ago | (#47221607)

The good thing about standards is that there are so many to choose from.

I thought there was a developer shortage! (0)

Anonymous Coward | about 5 months ago | (#47221637)

I keep hearing about a shortage of software developers. Why don't we go back to industry standards, so that skills are portable?

Each corporate walled garden has its own languages, frameworks, and development tools. This causes programmers to become uber-specialists, not only learning a walled garden, but learning each corporation's churn of random change. (Microsoft: Forget Visual Basic, we've got C#! Forget ADO.NET, we've got EF! Apple: Forget Objective-C, we've got Swift! Google: Forget that Android API from two point releases ago, we've got a new one!) Your skills aren't portable from one walled garden to another, and not even from one year to another in your own walled garden.

I do give Google credit for using Java in Android, but not because they wanted an industry-standard language other people use, but because it was free.

But each corporation has its own sandbox for developers:

- Apple has Objective-C (and Swift), iOS, Core Date, etc.
- Google has Java, Android, their own database API, etc.
- Microsoft has Windows/Metro/etc, C#, EF, etc.

If I know one of these sandboxes, I couldn't get a job in another sandbox, even though it's all the same stuff with different names.

So if there's a developer shortage, why not stop having so many languages and return to portable skills?

So, what's in it for Google? (0)

Anonymous Coward | about 5 months ago | (#47221643)

Another way to mine your privacy and sell it?

No (1)

Tyler Durden (136036) | about 5 months ago | (#47221657)

We don't need more web programming languages. Just one good one.

Not only Java! (1)

bickerdyke (670000) | about 5 months ago | (#47221667)

Of course we had Java applets for that.

Then standalone flash-apps

and then AIR.

Somewhere inbetween the web-app and the local app we had the dreaded ActiveX.

And didn't both Firefox and chrome offer, but fail to establish some container format to add mostly local HTML&Javascript archives to the start menu and work similar to local apps?

HTML5 at least put a standard onto local storage.

And I'm completly leaving out Silverlight-Apps as I can't exactly remember their intended purpose. (But I'm pretty sure it was something along the lines of uniting local and web apps, too)

Did I miss out something?

Re:Not only Java! (0)

Anonymous Coward | about 5 months ago | (#47221733)

Java: decent security model, decent interactive language/design, miserable UI libraries (is JavaFX any better?)

Flash/Silverlight: sub par security model, excellent interactive language/design, decent UI libraries (Flex, etc.)

HTML5/JS: decent security model, miserable interactive language/design, miserable interactive UI libraries.

Somehow, we keep just bolting more shit onto the HTML/JS model as if that is a real long term path forward for rich internet applications. HTML/JS was never designed for RIA, and until we cut bait on that house of cards, we're stuck with the mess we currently have.

Re:Not only Java! (0)

Anonymous Coward | about 5 months ago | (#47221999)

cut bait on that house of cards

Your metaphors intrigue me, and I would like to subscribe to your literary magazine.

Language or framework? (1)

mlk (18543) | about 5 months ago | (#47221669)

Languages we have [github.com] . Add on emscripten [github.com] (a back end for LLVM [llvm.org] ) we have a healthy number of language. But do we have a framework for these to live in which can allow apps to expand out of the browser? And are the frameworks designed for anything other than the Java script world the browsers live in.

> Web applications may one day surpass desktop applications in function

An app built on top of a app on top of a framework will not surpass an app build directly on the framework in function. It may be easier to develop, but that is a different thing.

Coming full circle (2)

H3lldr0p (40304) | about 5 months ago | (#47221695)

So how about that? A programming language that'll download and store a program for later use just in case the network connection isn't stable or available. Sounds good to me. Having more than one way to get a program is a great thing to do.

Seems to me that if I can't rely on my network I'd want some sort of storage media that'll let me back up or reinstall the base program. It should also be light and easy to transport with plenty of additional storage space, just in case of anything.

Seriously, the older I get the more I find out that everything old is new again.

A new Protocol not language (0)

Anonymous Coward | about 5 months ago | (#47221699)

HTTP was designed for document retrieval at CERN not for applications. Applications over HTTP is now 20 yr old hack. A protocol that handles state, ACID transactions and persitency in a clean well architected way is the need.

Oblig. xkcd (5, Funny)

Anonymous Coward | about 5 months ago | (#47221711)

http://xkcd.com/927/

Full circle (0)

Anonymous Coward | about 5 months ago | (#47221713)

There's already several very fine general purpose languages without considering inventing more. Maybe they could port Java or C# to the web and finally get rid of the mess that is javascript and php and then we can do some really cool stuff.

Wait.. Maybe we can have some way to download code to run later. Maybe contained in a convenient package that is automatically added or removed from your system, and which we can use even if there is _gasp!_ no internet at all. We could get games and software without ever having to visit a webpage or even open a browser! It will be an amazing and revolutionary concept never tried before!

Or maybe... (1)

ilsaloving (1534307) | about 5 months ago | (#47221729)

Just adapt existing languages so that they run inside web containers?

There are currently several HUNDRED different programming languages available right now. Why the fuck do we need more? Why does everyone feel the need to crank out new 'languages', when 90% of them are just derivatives of existing stuff and don't actually provide anything of value apart from making things that much more difficult for developers in general?

We need *less* languages, not more. Software quality has gotten really bad over the past few years, in large part because there are so many people out there who think that they're a programmer just because they know how to write a couple lines of code with the latest language du jour, and others just nod their head and accept it because it's 'new' and therefore 'better'.

Call me a fogey if you want, but tell me this... If you knew that every building you walked into, or every bridge you drove over, was created with yet another measurement system because the previous one was 'old and busted', or used brand new materials solely because the materials were new, how comfortable would you be?

Re:Or maybe... (5, Insightful)

BasilBrush (643681) | about 5 months ago | (#47221969)

I'm a old fogey. And I welcome new programming languages. Because the existing ones suck so much.

When do you suggest we should have stopped? With COBOL as the major language? or C? With PHP as the major web language? With PERL is the major scripting language?

Bring forth every language anyone wishes to invent, and let the good ones rise to the top.

Software quality is a different issue. And most of it is in unrelated to language. But on the language side, new languages can help. Take Swift vs Objective-C. Many or most fatal bugs and security vulnerabilities with C languages revolve around stray pointers, exceeding bounds, and omitting breaks in case statements or braces around if blocks. These are simply not possible in the new language. And thus software quality will be improved.

Re:Or maybe... (0)

Anonymous Coward | about 5 months ago | (#47222051)

Many or most fatal bugs and security vulnerabilities with C languages revolve around stray pointers, exceeding bounds, and omitting breaks in case statements or braces around if blocks. These are simply not possible in the new language. And thus software quality will be improved.

Which is why Java software quality exceeds that of C++.

Re:Or maybe... (1, Funny)

Viol8 (599362) | about 5 months ago | (#47222105)

"These are simply not possible in the new language. And thus software quality will be improved."

What type of software? Good luck writing device drivers in Swift. Yes I know its a niche area, but you know, it is kind of an important one.

If the new languages that came along brought something new to the table then no one would complain, but often its just the same old cola with a bit of extra sugar. Wooah , garbage collection! genetic types! no pointers! Yeah, I'm really going to spend months getting up to speed just for that. Not.

Do google engineers work at marketing now? (0)

Anonymous Coward | about 5 months ago | (#47221735)

So this 'engineer' explains that we need more web based apps because it's better than local apps but the web sucks so we need to be able to run the web apps locally.
I think he missed out on noting that even if you run these apps locally because you web sucks, you won't get far because all the libraries and data that the web app is using are on the webclouds.
He is missing his own point.

How google engineer like a sanitation engineer? (0)

Anonymous Coward | about 5 months ago | (#47221751)

Both have nothing but crap to show for their efforts.

We don't need more languages, we need bytecode. (3, Informative)

goruka (1721094) | about 5 months ago | (#47221753)

Web browsers should at this point be able to parse some sort of bytecode that can be translated to native. This way anyone can use whatever programming language he or she pleases. Google did a great work with PNaCL, but I don't think that will ever gain traction from the other vendors.

Mozilla's ASM.JS is much better idea and much closer to a real-life usage scenario, but Google itself is not doing enough to promote it and their support is half assed (even though It would definitely benefit them).

Plenty already (1)

Anonymous Coward | about 5 months ago | (#47221775)

There are already plenty of languages that do everything I want. Frankly I don't need or want another language. More platforms would be nice though.

Need more web programming languages... (1)

P Bacon (3557945) | about 5 months ago | (#47221863)

...to distract people from the sexy new non-web language from the fruit factory.

Warning: Know-it-all is posting (2)

NotFamous (827147) | about 5 months ago | (#47221939)

The problem is that we even have a concept of "Web" programming. There should be no such thing. It reminds me of the early 90's when we had Multimedia programs - those that could access a CD-ROM. It doesn't matter where you are running, where you data is, and where your output is. We need ALL of our programming languages to be updated to realize this. We don't write to files, we write to streams. Data is always just written to a store. The fact that the local store synchronizes with the server store is a library issue. We should be able to create "Web" programs with the same tools that we write all programs.

Web languages are a dumb idea, and always wrong (1)

Anonymous Coward | about 5 months ago | (#47221967)

If you go out of your way to invent a broken limited language, you'll just regret it later. Adding in all the stuff you thought you wouldn't need (but of course did) will make it look like a dirty hack, because that's exactly what it'll be.

Whatever project you're working on, you should write it in a general all-purpose programming language. If you're convinced no one has invented a good language yet (you weirdo) ok, go for it. But FFS don't call it a "web" language, because if your language is successful, I guarantee you'll be using it in non-web contexts.

Example: I have written and maintain some classical stdin-to-stdout Unix-mindset filters written in PHP, not because PHP is good (it's not!) but so I could use ("include") some of the same code that the website uses. And let me tell you, all the really dumb stupid short-sighted decisions that PHP's inventors' made because they (correctly) thought they were just making a limited toy web language, are always there in my face. I've just trained myself to not really see the problems anymore. But if we had used a traditional language instead, the payoff would have been many times over. And yes, even on the website itself.

Outputting HTML is such a tiny, tiny part of most websites' code these days. You don't need "special language features" for handling that one insignificant case.

The Web is always available, except when it is not (0)

Anonymous Coward | about 5 months ago | (#47221983)

Brilliant. Everything is anything except when it is not.

Clueless (0)

Anonymous Coward | about 5 months ago | (#47222039)

This guy is clueless. There are plenty of programming languages available, Java being the BEST for serious we development. He needs to learn a real language instead of trying to reinvent the wheel. Too much time on his hands at google.

There are already a lot of them... (1)

Karmashock (2415832) | about 5 months ago | (#47222067)

I think we might say we need a better language. That said, the web is a riskier medium from a security stand point. I don't know if I want more powerful programs running at that level because you could as easily have worms written into the damned things.

I already use noscript on most sites to disable everything but HTML. I really don't want to put up with more of this stuff since most of just makes the site slower, delivers ads, tracks my movements on the internet, or attempts to throw pop ups all over the place.

I'd just assume have the coding on sites remain as simple as possible.

My is REALLY Important... (0)

Anonymous Coward | about 5 months ago | (#47222071)

... so important that I have to make an announcement, about how important it is...

because everyone in the world who really matters is ignoring Dart the same way we ignore all other spurious, useless, wastes of time.

20% slack time is admirable... but trust me, not every idea attached to the Google name is worth the time it took to write this post.

Better form capabilities ; not a new language (1)

herve_masson (104332) | about 5 months ago | (#47222095)

What it takes to create more great app is more about a decent support for modern form elements than a new way to tweak stupid useless dom elements endlessy. How about native table with locked rows/tables ? How about native searchable combos ? etc etc etc... Yes, we can reinvent this weel forever via jQuery + some plugin + ..., but it takes so much wasted energy to do so.

Another language is not necessary a bad thing, it's just not a priority to me. Far from that. Javascript is quite decent when you take the time to use it rigth.

Evidence? (0)

wisnoskij (1206448) | about 5 months ago | (#47222163)

So they are saying the reason the desktop is winning is because it has hundreds and hundreds of programming languages to choose from?

Never mind that 99% of all programs are written in C/C++ and .9% use Java/C#.

If anything the web actually has more *actively used* languages. To be a web developer you need to know JS/JQ, PHP, HTML, HTML5, XML, CSS, Flash/AS, and maybe a little Perl, ActiveX, ect.
99% of desktop developers only know C++, and only need to know C++. If you want to be highly adaptable know how to work in Java based languages and work with DBs.

This Google Engineer is a certified idiot.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?