The Schizophrenic State of Software In 2014 209
jfruh writes: "The current state of the world of software is going in two radically different directions. On the one hand, server-side software is maturing, with wide consensus on tools and techniques that can be used across platforms. On the other hand, client-side programming is an increasingly fragmented mess, with the need to build apps for the Web and for multiple PC and mobile platforms, all natively. But of course, the server and client sides have to work together to deliver what people actually want."
common platform (Score:4, Insightful)
If only we had some standardized, ubiquitous platform for delivering information and applications to all sorts of devices. A platform that permitted linking between apps in a sort of "web" instead of having everything be isolated and separate. A platform that didn't require approval or payoff of competing third parties. Man, I must be dreaming.
captcha: mourning
Be Thankful (Score:5, Insightful)
This is something to accept in an industry that is by definition always going to be on the bleeding edge of change.
It is part of the fun --- go back 30 years and it was mainframe vs. personal computer and IBM PC vs. Apple vs. Commodore --- in the 1990s hardware graphics acceleration and web browser and GUIs were the agent of change.
Ask if anyone thought Objective C or Java were going to be important programming languages on phones in 2005?
Schizophrenic (Score:4, Insightful)
Server not fragmenting?? (Score:4, Insightful)
Perhaps you can run what you like on nearly any OS but...
Do you use NoSQL? Relational?
PHP? Some kind of CMS, or roll your own with Rails?
Store content on AWS? Or some other cloud? Or just local?
Or perhaps you want to simply use the Google App Engine or other systems like it, and have everything hosted without fuss... or rent an elastic compute server and run your own custom Erlang server.
Not to mention you really can't run everything on every OS, as there are still plenty of Windows server specific technologies I didn't even mention but tons of people use.
And you think server stuff is LESS fragmented?
Re:Be Thankful (Score:4, Insightful)
Ask if anyone thought Objective C or Java were going to be important programming languages on phones in 2005?
Java is indeed a resource hog, but I think it's ubiquity was already embedded in the ARM platform long before 2005 - actually pretty much a given for mobile development. Objective C is much more of a surprise. Had it not been for the advent of "iphone apps" I think it would have remained relegated to the cubicles of NeXt geeks. The syntax is simply too obsucre (manufactured to obscure it's underpinnings) to attract sane developers already invested it other popular high level languages.
Re:What was the state of server side progamming? (Score:5, Insightful)
Re:A Simple Solution (Score:2, Insightful)
I would, except the Web is the worst platform for delivering applications EVER.
So-called "standards" are not consistently supported, even when they're not shifting under your feet... CSS, JavaScript, XML, etc. all hacked-together kludges to add interactive functionality to a medium designed for statelessly delivering static documents... broken security models, latency issues, content management systems that are more time-consuming and painful to use than just programming the damn site...
I say scrap it and start over from scratch!
How is this not ideal? (Score:4, Insightful)
IMHO, the ideal situation is, you define standard formats and protocols, and then you give everyone the freedom to use whatever technology they want to interoperate using those protocols.
Want to write your mail server in Java? Python? Prolog? I do not care as long as it speaks IMAP. Want to write your mail client in C#? Objective-C? Ruby? I do not care as long as it speaks IMAP.
Isn't this exactly how things should be?
Re:How is this not ideal? (Score:2, Insightful)
Yeah, sure you want your mail server talk IMAP. SMTP on mail servers is so nineties!
Re:Deliberately missing browser features (Score:5, Insightful)
Operating system publishers leave features out of their browsers on purpose to push their proprietary native app platforms.
Well, that and the fact that every technology in history that has attempted to offer native access and functionality to remote web sites has gone on to become one of the biggest Internet security problems of its generation.
Re:common platform (Score:4, Insightful)
Dude, you should definitely start programming in HTML5, I'm pretty sure it's exactly what you're looking for.
Thinks that you can NOT do in HTML5:
- Use local storage exceeding 5MB.
- 3D graphics (WebGL is poorly supported so far)
- Tilt and shake gestures
- Device location and orientation
- Audio recording
- Camera
- Text to speech
- Speech to text
- much more.
Re:Change propagation; resource management (Score:4, Insightful)
I do give up some of the whizz-bang features of the language for the sake of keeping it simple, but my code base is the same on all 3 platforms.