Slashdot Mirror


The Schizophrenic State of Software In 2014

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."

22 of 209 comments (clear)

  1. common platform by Anonymous Coward · · 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

    1. Re:common platform by ShanghaiBill · · Score: 3, 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.

  2. Be Thankful by TrollstonButterbeans · · Score: 5, Insightful

    Programming is always going to be a mess and there will never stop being new platforms.

    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?

    --
    Priest: "Universe from nothing, no laws of physics, sped up time"+ huge discrepancies. Creationism? No. Big Bang Theory
    1. Re:Be Thankful by Anonymous Coward · · Score: 4, Informative

      Java was an important programming language on phones in 2005.

    2. Re:Be Thankful by sl4shd0rk · · Score: 3, 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.

      --
      Join the Slashcott! Feb 10 thru Feb 17!
    3. Re:Be Thankful by unimacs · · Score: 3, Interesting

      I agree that from a developers perspective this IS part of the fun. And what's even more fun is that there's going to be an explosion in the use of micro controllers as people figure out what's possible from messing around with arduinos and the like.

      But from the business side it sucks. Also as a developer you have to be careful you don't get yourself locked into one technology. To me learning new stuff is part of what makes my job enjoyable but far too many of us get comfortable and find ourselves reaching into our middle years with skills that are no longer in demand.

  3. Schizophrenic by uncle+brad · · Score: 4, Insightful

    I do not think it means what you think it means.

  4. haxe language by submain · · Score: 3, Informative

    That's why we need more people using languages like this: http://haxe.org/

    I discovered it a couple of months ago. It has its quirks, but not having to worry about rewriting your entire app for another platform is a blessing. And no messy VMs needed.

  5. Nothing New by Akratist · · Score: 5, Funny

    Programming always has been, and always will be, a mess. There is a reason that maybe two percent of the people in the world can actually do this work -- the other ninety-eight percent are sane and don't think like psychotics locked in the Red Bull factory.

  6. Re:Adobe Air by gaspyy · · Score: 4, Interesting

    I fail to see how AIR is a problem worse than Phonegap or what Chrome is offering right now as a wrapper over html5.

    Making a cross-platform game is world of pain, especially when you're small.

    I was able to make my chess game available on web, as a chrome app, as a native app for PC, Mac and Linux and for mobile on iPhone, iPad, Android tablets and phones, even the now-dying Blackberry Playbook. The game is quite complex but 99% of the code is cross-platform, there are very few platform-specific lines.

    I've been considering porting it to HTML5 but the amount of work needed is too much for one man. The AI is straighforward (Javascript and AS3 are closely related), but porting the UI, the multiplayer code and then tweaking it to make sure it works with all major browsers is not something I'm looking forward to. With AIR I can keep my sanity and concentrate on features.

  7. Server not fragmenting?? by SuperKendall · · Score: 3, 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?

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  8. Re:What was the state of server side progamming? by jythie · · Score: 4, Insightful

    Well, there is consensus if you ignore detractors within your own community. I have noticed that companies where a particular web developer culture is strong tend to hire people who agree with the current development teams and exclude those who do not, so you rapidly get clustering that feels like consensus, but is really just group think.

  9. How is this not ideal? by DdJ · · Score: 3, 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?

  10. Deliberately missing browser features by tepples · · Score: 5, Informative

    Yes, you are dreaming. Operating system publishers leave features out of their browsers on purpose to push their proprietary native app platforms. Ever tried using WebGL, the Stream API, or with content types other than pictures and videos in Safari for iOS?

    1. Re:Deliberately missing browser features by Anonymous+Brave+Guy · · 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.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    2. Re:Deliberately missing browser features by jellomizer · · Score: 4, Funny

      What do you mean, this was the point of ActiveX. ActiveX didn't cause any security concerns.
      It isn't like when someone is asked to accept to install something, they will just hit Yes, to get it out of the way.

      The Web isn't a good way to do high performance computing. The good news is, most people don't need high performance.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  11. Re:Like slashdot? by tepples · · Score: 3, Informative

    Or refusing to let us link to a specific comment? (Pick any comment and try to come up with a link you can send to someone.)

    From the classic interface, try this:

    1. Look for a line like "by Okian Warrior (537106) on 2014-01-31 12:16 (#46121151) Homepage Journal".
    2. Right-click or long-press the comment ID (#46121151).
    3. Choose "Copy Link". (The wording may differ in your web browser.)
    4. Paste elsewhere.
  12. Xamarin solves some of this by codemachine · · Score: 3, Informative

    Client side can be made a bit less painful with Xamarin. You can use one language (C#) for all platforms, and share a fair bit of code between platforms.

    Of course you still need separate code to give a native UI on each platform, and different packaging to get the application out there.

    Gone are the days of being able to target Windows to get over 90% of the client side market. There is real fragmentation, and innovation is happening quickly. There are many benefits to this, but stability in client side frameworks is not one of them.

  13. PLEASE LOOK UP SCHIZOPHRENIA by Yew2 · · Score: 4, Funny

    I so hate when people confuse it with multiple personality disorder. And so do I!

    --
    will work for dragon quest localization
  14. Re:Adobe Air by gaspyy · · Score: 3, Informative

    SWF was amazing for its time. Streaming vector animation with synced sound over modem speeds. Even today you need a hodge-podge of technologies - SVG, Javascript and a bunch of libraries to achieve what you could do 17 years ago! And I'm not even sure you can stream a svg animation+sound.

    SWF has 2 shortcomings:
    - it's proprietary
    - it doesn't integrate seamlessly with its environment (browser).

    For standalone apps, these are not big issues.

  15. Re:Change propagation; resource management by rsilvergun · · Score: 3, Insightful

    I find the solution to that is lots of well organized libraries. I wrote an mp3 tagger and it compiles on Windows, OSX and Linux because I use Poco and QT for everything instead of writing it myself.

    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.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
  16. For GUI stuff: Lazarus by Casandro · · Score: 3, Informative

    http://lazarus.freepascal.org/...
    It just compiles to Linux, MacOSX and even Windows. And for all three you get a statically linked library. And in all three you get a native GUI with the GUI elements the user expects.

    I haven't tried Android or Windows CE support, but they are claimed to work.