Slashdot Mirror


An Interesting Look At the Performance of JavaScript On Mobile Devices

First time accepted submitter faffod writes "Coming from a background of console development, where memory management is a daily concern, I found it interesting that there was any doubt that memory management on a constrained system, like a mobile device, would be a concern. Drew Crawford took the time to document his thoughts, and though there is room for some bikesheding, overall it is spot on. Plus it taught me what bikeshedding means."

157 comments

  1. Mobile web really IS slow! by EvanED · · Score: 5, Funny

    Don't blame Timothy for the dupe; no doubt he posted it from his mobile.

    1. Re:Mobile web really IS slow! by faffod · · Score: 2

      Sigh... I did look back to see if it had been posted, didn't go far enough. *hangs head in shame*

    2. Re:Mobile web really IS slow! by EvanED · · Score: 1

      Heh, no worries. It's mostly the editor's job anyway...

    3. Re:Mobile web really IS slow! by Trepidity · · Score: 4, Insightful

      Since this was literally the same link, not just the same story but via a different source, it seems like there could be a pretty simple automated dupe-checker that flags it and tells the editors: a story with the same link was posted in the past N weeks, are you sure you want to post?

    4. Re:Mobile web really IS slow! by Mitchell314 · · Score: 2

      I'm surprised I haven't seen anybody publish a script that sees if something similar has been posted in the recent past on slashdot based on key words or some analytics voodoo. Would make for an interesting project, and fitting too!

      --
      I read TFA and all I got was this lousy cookie
    5. Re:Mobile web really IS slow! by Anonymous Coward · · Score: 1

      slashdot is too static for that. reddit, which provides a json interface with several frameworks already established, makes a much better research platform.

    6. Re:Mobile web really IS slow! by phantomfive · · Score: 5, Funny

      Quick! Now's your chance! Go copy a high-rated comment from the other story and get yourself a +5 moderation!

      --
      "First they came for the slanderers and i said nothing."
    7. Re:Mobile web really IS slow! by phantomfive · · Score: 4, Funny

      For a real salute to recursion, I personally copied that comment from a previous dupe......

      --
      "First they came for the slanderers and i said nothing."
    8. Re:Mobile web really IS slow! by Luyseyal · · Score: 1

      Indeed, even Fark has had this feature for years and years.

      -l

      --
      Help cure AIDS, cancer, and more. Donate your unused computer time to worldcommunitygrid.org. Join Team Slashdot!
    9. Re:Mobile web really IS slow! by amicusNYCL · · Score: 1

      A Slashdot story isn't a single link. It's a block of text that may contain 0 or more links. It's not like reddit or Fark where you're posting a link to a single article, and that's about it. They could write code to scan all summaries for all links and log each of them, but it's not as simple as it would be with something like Fark.

      --
      "Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
  2. Chek your speling by Rob_Bryerton · · Score: 4, Funny
    From TFS:

    ...and though there is room for some bikesheding, overall it is spot on. Plus it taught me what bikeshedding means."

    But it didn't teach you how to spell it...

    1. Re:Chek your speling by Anonymous Coward · · Score: 3, Funny

      <Ralphie Wiggam> The missing 'D' was used for my grade. </Ralphie Wiggam>

    2. Re:Chek your speling by slashmydots · · Score: 2

      Spelling isn't important in programming, lol. That's what the IDE is for. Coincidentally, most IDEs for javascript have little to no spelling assistance, lol.

    3. Re:Chek your speling by arth1 · · Score: 2

      I'm glad I don't work with you, if you laugh at loud for every sentence you write.

    4. Re:Chek your speling by Anonymous Coward · · Score: 0

      me too lol!!!1!!!!111!!!

    5. Re:Chek your speling by Anonymous Coward · · Score: 0

      LAL!. Chuckle when someone raises their voice?

    6. Re:Chek your speling by Anonymous Coward · · Score: 0

      looks like a typographical error, not a spelling error

    7. Re:Chek your speling by GigaplexNZ · · Score: 2

      Spelling isn't important in programming, lol. That's what the IDE is for. Coincidentally, most IDEs for javascript have little to no spelling assistance, lol.

      Tell that to Microsoft who had to break compatibility due to some spelling mistakes. Specifically, the MFC/ATL section.

    8. Re:Chek your speling by Flere+Imsaho · · Score: 1

      Irony overload, abort, abort!

      --
      It gripped her hand gently. 'Regret is for humans,' it said.
    9. Re:Chek your speling by lxs · · Score: 2

      I like the comma before "lol." Write sentence, little pause, bellylaugh. Classic.

    10. Re:Chek your speling by MrBandersnatch · · Score: 2

      "Spelling isn't important when writing. Thats what the word processor is for!"....."lol"

      You're me at 13 aren't you? :)

    11. Re:Chek your speling by slashmydots · · Score: 1, Offtopic

      You should be. Since I'm the IT manager, I'd fire you with an attitude like that.

    12. Re:Chek your speling by slashmydots · · Score: 1

      Is this your first time on the internet?

  3. It is performing excellently by Anonymous Coward · · Score: 0

    At delivering malware payloads even in your adbanners. Yes everyone: The brilliant brainiacs that decided scripting documents was "smart to do" just ends up screwing you over in the end. Especially funny since they had the example of macros in documents (like MS Word ones) beforehand and saw how that ended up working out too in malware galore being delivered via those scriptable documents. Why not open up the door and let the trash come blowing in next! Might as well, since the material you consume comes loaded with it because of this idiot's move.

  4. Typical console developer rant, IMO. by goruka · · Score: 3, Interesting

    I'm probably going to get downvoted as troll, but my experiences with most console developers were often strange (as a developer myself).
    Talks usually end up in most of them dismissing scripting languages, higher level APIs (such as OpenGL), or certain algorithms as useless because they are slow, use too many instructions unnecessarily, waste cache, etc.

    Any attempt to raising a point about how you don't need to optimize everything but only few critical zones of your code (what matters), or that a cache wasting algorithm can end up being faster anyway just because it's more efficient, immediately results in myself being dismissed or treated as ignorant because, something inefficient is obviously inefficient and I must be stupid for not realizing that.

    This article reminds me of that. The author claims (in his first claim) that he is determined to prove that something is less useful because it's slower, and nowhere in that huge long piece of text there is anything useful offered as proof, instead he keeps posting data about how slow Javascript really is.

    1. Re:Typical console developer rant, IMO. by Anonymous Coward · · Score: 0

      It comes from a usability standpoint. I've developed the same application in Javascript, Java, and C. Basically, it took ten events and determined the length of time SINCE and length of time UNTIL those events, broken down into months, days, weeks, years, hours, min, sec, in a way that would say, "It has been X years, X months, X days, X hours, X min, X seconds since..."

      Javascript was the slowest.
      Java came in 2nd.
      C came in first.

      I program in many different languages (I'm not biased to either one). I will tell you this, though: Use the language that's best for the job. If Javascript is slow THAT mobile application, then, guess what? Program it in a translated language. IF that is slow, too; then hey, try Native. If that's slow, shit, son, you've got some work to do.

    2. Re:Typical console developer rant, IMO. by Anonymous+Brave+Guy · · Score: 2

      Any attempt to raising a point about how you don't need to optimize everything but only few critical zones of your code (what matters) ... immediately results in myself being dismissed or treated as ignorant

      To be fair, if you were debating with someone who writes applications that really do need the very top levels of performance, and you claimed that optimising trouble-spots would be sufficient to achieve that, then you were ignorant. For most software, being within a factor of 2 or 3 of hand-optimised low-level code is easily sufficient, and a bit of work with the profiler to identify the most serious flaws will go a long way. The rules change when you shift from that kind of performance standard to needing the very top levels, because then the emphasis on speed permeates everything.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    3. Re:Typical console developer rant, IMO. by OneAhead · · Score: 1

      Ahh, the quest for Uniformly Slow Code. Something the scientific programmer is deeply familiar with. Too bad there's so few people who understand.

    4. Re:Typical console developer rant, IMO. by Arker · · Score: 2

      They arent useless but they are certainly not always the best (or even simply an appropriate) tool to use. Scripting is great for the trivial-but-useful, particularly a one-off or a mock-up. But any sort of serious computer program is going to be better if you program it and most anything that is trivial-but-useful enough to have a jscript app should be quickly reproducable on any platform that you want in a native fashion. Do you need a native program to have a simple calculator? No, javascript will do. And that's great.

      At the same time, if that simple calculator is something you use very often, make an app. You dont have to be worried about the simple calculator overwhelming your phone to think that makes sense - because we all multitask these days and/or worry about electricity/battery life etc. on many devices.

      It's funny seeing how people are rediscovering the importance of programming as a result of these phones. The reason it makes me chuckle is that I remember working with PCs that had orders of magnitude less system resources than these phones do, so I understand that it is actually the abstraction layers in use that make the hardware seem so limited.

      You kids nowadays think a power-throttled ARM processor and a couple gigabytes of RAM is 'limited resources.' You should try a z80 with 8kb ram. Believe it or not, if you actually program the thing instead of expecting your libraries and abstraction layers to deal with it for you, you could make that work too.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    5. Re:Typical console developer rant, IMO. by arth1 · · Score: 5, Insightful

      The problem is that your baby is not the only thing running on the system. When you waste resources, you do it on behalf of everything else that runs too. Even if your baby isn't doing anything critical when you waste it.

      It only takes one selfish programmer to screw up an embedded system. You are he.

    6. Re:Typical console developer rant, IMO. by radarskiy · · Score: 1

      There is no one so precious that they have slipped the surly bonds of Amdahl's Law.

    7. Re:Typical console developer rant, IMO. by Kartu · · Score: 1

      Does "World of Warcraft", the most popular (western) MMORP with (once, and probably still) 10+ million users sound like a program serious enough?
      Guess what, its UI is scripted (LUA).

      Scripted languages have enormous advantage of being much easier to bugfix than native apps.

    8. Re:Typical console developer rant, IMO. by Arker · · Score: 1

      Whee, the UI of a game is scripted. That's not exactly a critical application, and it's not like they tried to write the whole thing in ecmascript. And it's not like the gamer market hasnt been well traind to accept and even expect to constantly buy more powerful hardware in order to 'consume' a never-ending string of bugfixes from game launch date to EOL.. Anyone that sets anything up so that his game UI crashing or malfunctioning in strange or unforseen ways is a big problem is an idiot.

      "Scripted languages have enormous advantage of being much easier to bugfix than native apps."

      This is a strange statement to make. They do avoid certain types of bugs by not giving you enough control to introduce them, of course. But when you hit a bug it's more likely to be a bug in your environment (beyond your control) that you cannot fix. Other than that, what? A shorter text to sort through finding the bug I guess. A molehill beside mountains, in the wrong application.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    9. Re:Typical console developer rant, IMO. by faffod · · Score: 1

      WOW is a serious project, no denying it. But if it doesn't perform sufficiently, the user is expected to purchase better hardware. On a console or mobile, that is not an option, the hardware is fixed. If two developers make the exact same game, and one uses a native language with few libraries, and the other uses an interpreted library with highly abstracted libraries, the experience provided to the end user will not be equal. You can profile the interpreted code to death and still never achieve the fidelity and quality of the native solution. You'll have noticeably fewer polygons, fewer AI, etc. Now maybe the spec for the game you're making will still be met, in which case knock yourself out. But In choosing that path you have already locked in an upper bound.

      I have used Lua in a variety of console games that I have shipped, and it has its uses. In particular, iteration time with an interpreted language is typically much faster. When trying to hone the experience, iteration rules, and the developers that allow their content creators to iterate quickly and effortlessly will always be able to produce a game that feels more polished. It is a case of knowing why you are making your choices, not a case of allowing dogma (only low level is fast) or ignorance (ease of development can overcome inherent limitations). Note, I think that WOW uses Lua because it is easy for the servers to modify the code by sending data packages (but that may just be my male answer syndrome kicking in)

      I disagree with the sentiment that scripted languages are easier to debug. I've shipped games where there was no Lua debugger for the designers (yes, that is abusive, and I still apologize to them today, but that was the hand we were dealt). The fast iteration time might make you think that you can keep trying different solutions as a method of debugging. Where the rapid iteration is great for improving the experience, it is a poor approach to take for debugging. Too many developers take the shot gun approach to debugging (and this has nothing to do with interpreted vs compiled, I've seen it everywhere). Though a bit too extreme to be realistic, I like to make people think about this: Debuggers are the worst tool for development, it makes programmers not think and analyze their code and therefore they don't understand it. Once again, between the two is right balance, use your debugger but think about your code - and that has nothing to do with scripting languages.

    10. Re:Typical console developer rant, IMO. by byrtolet · · Score: 1

      Debuggers are the worst tool for development, it makes programmers not think and analyze their code and therefore they don't understand it.

      Very well said.

    11. Re:Typical console developer rant, IMO. by Anonymous Coward · · Score: 0

      Uuum, NO?
      Your "argument" actually is completely unrelated to everything.

      His point was, that there is no point in optimizing the code that barely takes any resources to begin with. By definition even. There already is no wasting.

      What else runs on the system doesn't matter for that to be true.

      And you're a dick.
      I recommend get ting an light ened. Or Jeff an heavy ened. ;)

    12. Re:Typical console developer rant, IMO. by White+Flame · · Score: 1

      The funny thing is that he's recommending Automatic Reference Counting instead, which destroys cache much more than GC during regular processing.

    13. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      Re-read his second paragraph, AC.
      Or did you just intend to troll and see how many moderators you could trick?

    14. Re:Typical console developer rant, IMO. by goruka · · Score: 1

      It only takes one selfish programmer to screw up an embedded system. You are he.

      Even though it's unrelated with my original post, you are saying that not going native is worse because it uses more CPU cycles/battery?
      Explain to me why, for decades, the industry used J2ME, Java (Android) and now ObjC (Apple). I guess the entire mobile industry is selfish and greedy?
      You probably didn't understand GP, though, the message is that you don't need to optimize something that doesn't consume enough cycles be a performance problem.

    15. Re:Typical console developer rant, IMO. by Anonymous Coward · · Score: 0

      Aaah, ignorance, delusion and personal attacks.
      The last weapons of those with no arguments.

      I actually wonder if you read AC's comment at all...
      I ask you one single question: What wasting?

    16. Re:Typical console developer rant, IMO. by skids · · Score: 1

      His point was, that there is no point in optimizing the code that barely takes any resources to begin with.

      Actually his point is usually applied to a concept of "hot path" where, regardless of how many resources a peice of code "takes", what matters is how often that peice of code is run. The problem with doing this is that programs and their usage patterns change and evolve over time. What was not a "hot path" yesterday can become one due to changes outside the program itself -- e.g. suddenly all the packets it receives have an option set that was only set on 1% of packets when the code was initially profiled.

      So you end up with code that can break into being slow, rather than being obviously broken. This increases your workload supporting the program post-release. You have to replicate what customers are doing (good luck) and re-profile while under that particular load to find the new hot paths. So while scripting languages are hailed for ease of development, ease of maintenance in a high performance environment is another matter entirely. If you optimize more things to start out with, you don't end up with this explosion of performance test cases to check.

    17. Re:Typical console developer rant, IMO. by Barryke · · Score: 1

      "Scripted languages have enormous advantage of being much easier to bugfix than native apps."

      This is a strange statement to make.

      No its not a strange statement.
      Perhaps you haven't scripted much, but you'll understand that you dont need to recompile or even restart software.
      Fix. Test. Ok, next.

      It allows designers to experiment on their own initiative, and R&D to focus on the important stuff.

      --
      Hivemind harvest in progress..
    18. Re:Typical console developer rant, IMO. by Arker · · Score: 1

      That's true with any interpreted language, it isnt unique to scripts. You've been able to work like that for decades with LISP for instance.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    19. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      It's impossible to personally attack an Anonymous Coward.
      But I'm glad you recognize what you are doing.

      As for "What wasting", I asked you(?) to re-read the guy's second paragraph, but this was apparently too hard. So let me quote it:

      Any attempt to raising a point about how you don't need to optimize everything but only few critical zones of your code (what matters), or that a cache wasting algorithm can end up being faster anyway just because it's more efficient, immediately results in myself being dismissed or treated as ignorant because, something inefficient is obviously inefficient and I must be stupid for not realizing that.

      That wasting. Right there.

    20. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      Even though it's unrelated with my original post, you are saying that not going native is worse because it uses more CPU cycles/battery?
      Explain to me why, for decades, the industry used J2ME, Java (Android) and now ObjC (Apple). I guess the entire mobile industry is selfish and greedy?

      Of course they are. But that's beside the point. Development is a trade-off - you have to work with the market you have, within deadlines that means you'll sell, and developers you can find and afford. So yes, you make do with what makes the task feasible.
      But you don't have to make it any worse than necessary by allowing bloat and doing things inefficiently. Adapting a mindset that you do work in a shared embedded environment, and do things frugally doesn't incur a great cost.

      You probably didn't understand GP, though, the message is that you don't need to optimize something that doesn't consume enough cycles be a performance problem.

      It's not just about cycles. It's also about resource use in a shared environment. The key word being shared. Whether something doesn't impact your own application isn't the problem - unless you have thought about how it could impact other applications and the overall system, you haven't done your job.

    21. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      To follow up on my own post, what we see in environments like the Android world is a tragedy of the commons. If everybody played nice, everybody would benefit. But there's no penalty to yourself for being greedy, so you are. And so are all others.

      Android really needs something like strictly enforced cgroups.

    22. Re:Typical console developer rant, IMO. by UnknownSoldier · · Score: 2

      > Talks usually end up in most of them dismissing scripting languages, higher level APIs (such as OpenGL),

      A few years back I've implemented OpenGL on the Wii and did maintenance work on our OpenGL version running on the PS2. Hell, even shipped a couple of games with it. OpenGL 1.x _can_ be implemented efficiently on a console if you apply some discipline. People who dismiss a rendering pipeline probably have never implemented one. HOWEVER, their point is that memory manage CAN be an issue if one isn't careful. ( NOTE please don't confuse the misapplication with the theory: Broadcom has a garbage implementation of OpenGL ES 1.x & 2.x across there devices from the ones I've worked with, but there is no reason it needs to be that bad. Apple has a very nice OpenGL ES implementation.)

      > I'm probably going to get downvoted as troll, but my experiences with most console developers were often strange (as a developer myself).
      > Any attempt to raising a point about how you don't need to optimize everything but only few critical zones of your code (what matters),

      No, the reason you should get down modded is BECAUSE your mindset is part of the problem not the solution,

      1. You don't understand the first rule of computing:

      TINSTAAFL: There Is No Such Thing As A Free Lunch.

      I do not know to the extent you are but lazy developers are spoiled by their excessive Virtual Memory, slow high level languages, and including every bloated 3rd party library under the sun and the kitchen sink that OVERALL add to a SLOW machine. Great developers _constantly_ keep optimizations a low priority THROUGHOUT the writing process in the background so they don't have go and clean up all the crap later. Your mentality of "we will fix it later" is the sign of an immature and inexperienced programmer.

      2. Your boss / peers are trying to teach you an important lesson:

      Do It Right The First Time!

      and

      Keep is Simple, silly!

      THAT is the point -- not your uneducated rant about "Who cares about memory usage, memory fragmentation, garbage collection, memory leaks, cpu cycles, etc." -- well your USER does EVEN if they don't understand the technical terms. ONCE you say the user experience is no longer important you have FAILED as a programmer. People are the SOLE reason software even exists in the first place. Please stop this shitty attitude that "performance doesn't matter -- we'll just throw more hardware at it." No! NO! NO! How about doing the best* with what you have instead?? ALL your code should be (relatively) clean, simple, fast, efficient. This has the side-effect that it is EASY to maintain to boot! Who wouldn't want. And you are going to make excuses that you can't be bothered???

      * Apply the 80/20 rule for time-management in case it wasn't obvious.

      To bring this back on topic, Javascript is a badly designed & implemented language because of

      a) lack of memory control which leads to memory fragmentation and bloat, and
      b) lack of types and which forces the run-time to do extra unnecessary work if they had designed the language properly in the first place.

      There is a time and place for everything. Just never forgot to keep asking the questions: Can we do this better?

      --
      "Necessity is the Mother of Invention, but Curiosity is the Father." -- Michaelangelo

    23. Re:Typical console developer rant, IMO. by UnknownSoldier · · Score: 1

      Someone please mod this up!!!

      That is THE fundamental problem with junior / immature programmers. They don't know how to THINK about the problem: its boundary and edge cases, the run-time memory usage, knowing if they are CPU bound, knowing if they IO bound, etc.

    24. Re:Typical console developer rant, IMO. by TheDarkMaster · · Score: 1

      It's funny seeing how people are rediscovering the importance of programming as a result of these phones

      Very, very well said, sir.

      --
      Religion: The greatest weapon of mass destruction of all time
    25. Re:Typical console developer rant, IMO. by TheDarkMaster · · Score: 1

      Scripted languages have enormous advantage of being much easier to bugfix than native apps.

      PFFFF Hahahahaha! Damn you, my desk is now a coffe mess! :-) Have you ever tried to debug something made in Javascript? With breakpoints, value inspection and etc? (If now there is a magical tool that could let me know because I need urgently)

      --
      Religion: The greatest weapon of mass destruction of all time
    26. Re:Typical console developer rant, IMO. by TheDarkMaster · · Score: 1

      Debuggers are usefull. But if the developer does not know what and where to look inside the data provided by the debugger, it will not help anything. (And oh yes, the debugger does not replace the need for the developer actually know what they are doing)

      --
      Religion: The greatest weapon of mass destruction of all time
    27. Re:Typical console developer rant, IMO. by TheDarkMaster · · Score: 1

      Where is my mod points when... Well, you got it :-) Very well said.

      --
      Religion: The greatest weapon of mass destruction of all time
    28. Re:Typical console developer rant, IMO. by goruka · · Score: 1

      I understand your point, but I believe it's a little too extremist.
      In the real world, It is always possible to write more efficient code, but the more you optimize, the more difficult to develop, maintain or port it becomes, exponentially.
      So in the end, it's always a trade off between performance and cost of development, added to the fact that not all code needs to be optimized, only the little portions that perform the most critical tasks.

    29. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      added to the fact that not all code needs to be optimized, only the little portions that perform the most critical tasks.

      That this is false is my point - it's only true if your app is the only app on a system. On a shared embedded system, the portions that don't do critical tasks are just as important to optimize for the rest of the system.
      Because there's no penalty to your own app, it becomes a tragedy of the commons.

    30. Re:Typical console developer rant, IMO. by goruka · · Score: 1

      So, what's the difference then, that your phone battery will last 18 hours instead of 20 because you didn't optimize more than the critical tasks?
      It seems much cheaper to solve this by adding a little more battery capacity, yet keep your phone OS and applications easier and cheaper to develop.
      No matter how you look at it, I can't see the scenario you describe as being a tragedy..

    31. Re:Typical console developer rant, IMO. by shutdown+-p+now · · Score: 1

      Explain to me why, for decades, the industry used J2ME

      Because Sun pushed it on everyone. It sucked big time, though. Did you ever write a J2ME app? It was the kind of platform where everything was an object except for primitives, but memory management was so messed up because of the combination of GC and extremely small heap, that pretty much any serious app didn't use any objects. Instead, you preallocated arrays of primitives, and used that for everything.

      Java (Android)

      You mean, the only mobile platform that still has horrible UI latency?

      and now ObjC (Apple).

      Obj-C compiles to native code and does not have a GC.

      In fact, it's kinda one of the major points in TFA. Are you sure you've actually read it?

      the message is that you don't need to optimize something that doesn't consume enough cycles be a performance problem.

      The problem in question is not a performance problem, it's a responsiveness problem. If you have a GC kick in during a touch-driven animation (e.g. user swiping a list to scroll), and it takes 200ms to walk your object graph and collect unreferenced objects, you've already lost that battle - the user will see lag and jittery animation that desyncs from his finger movement. Yet this exact thing is unavoidable in languages with tracing background GC, like Java or JS, since you don't have any control about when the GC kicks in. The only thing you can really do is avoid object allocations in the first place - which turns Java into an ugly and unwieldy subset of C (J2ME-style), and is utterly impossible in JS since what gets allocated where is an implementation detail there.

    32. Re:Typical console developer rant, IMO. by goruka · · Score: 1

      your mindset is part of the problem not the solution,

      Your mentality of "we will fix it later" is the sign of an immature and inexperienced programmer.

      1. You don't understand the first rule of computing:

      2. Your boss / peers are trying to teach you an important lesson:

      you have FAILED as a programmer

      Please stop this shitty attitude

      THAT is the point -- not your uneducated rant

      And you are going to make excuses that you can't be bothered???

      I'm so sorry, I'll never do it again!

    33. Re:Typical console developer rant, IMO. by arth1 · · Score: 1

      You didn't follow the link, did you? It's a situation that's called "a tragedy of the commons", which doesn't mean it's a tragedy.

      And anyhow, it's not about battery life, but applications using more than their fair share of memory, IO or other resources contribute to starvation for other apps that run at the same time, possibly causing crashes in other apps when they cannot allocate memory (because they're well behaved and allocate when needed and free when done), cannot update alarms in time, can't take a phone call(!), can't AV scan an incoming e-mail, or a million other things that can go wrong if too many apps on a system are hogs.

    34. Re:Typical console developer rant, IMO. by goruka · · Score: 1

      Ah, I understand. You are completely right..
      except this has nothing to do at all with my original post, nor the article, both about processor usage.

    35. Re:Typical console developer rant, IMO. by Anonymous Coward · · Score: 0

      Whee, the UI of a game is scripted. That's not exactly a critical application, and it's not like they tried to write the whole thing in ecmascript.

      WoW also exclusively runs on high performance desktop processors, and Blizzard chose a script language (Lua) noted for being very friendly to high performance interpreters and JITs. (ECMAscript is notably unfriendly.)

    36. Re:Typical console developer rant, IMO. by Anonymous Coward · · Score: 0

      You must be on some good drugs. ARC is the same thing as reference counting, just with the compiler automatically inserting refcount increments or decrements in code that touches objects instead of having you, the programmer, do so manually. Since ARC (or you) are generally inserting refcount modifications in close proximity to other uses of the object, it's pretty likely that its reference count field has been pulled into cache anyways (due to proximity to other fields in the object).

      Deallocating objects in a garbage collector, on the other hand, involves scanning through memory that hasn't been accessed recently, and is thus likely to have been pushed out of cache since the last time it was accessed.

    37. Re:Typical console developer rant, IMO. by betterprimate · · Score: 1

      It's funny seeing how people are rediscovering the importance of programming as a result of these phones Very, very well said, sir.

      And the most fun!

  5. thanks for sharing the link by Anonymous Coward · · Score: 0

    didn't slashdot post an article about the performance of JavaScript on mobile devices last week? just asking

    1. Re:thanks for sharing the link by skids · · Score: 1

      This is in the spirit of that post, which identified the problem as RAM wastage. By posting it again, more RAM gets consumed for the same object.

  6. Obvious by slashmydots · · Score: 1

    I learned C++ then VB.NET then C# then JavaScript. I was shocked at how "anything goes" it was and I assumed it was a memory nightmare. Considering my i5-2400 sometimes maxes out on pages with complicated javascript, I'm not surprised. I heard that JS can take 10x more memory than it needs at any given time realistically.
    The one thing I can't wrap my head around is if it was made a "real" language, would it be a gigantic security disaster? Or could it be limited enough to not turn into Flash, Java, etc?

    1. Re:Obvious by Rockoon · · Score: 1

      I started programming at a time when GOTO was still considered "kosher" (in C, no less) as a lot of algorithms were designed as state machines. To this day I still sometimes consider a goto, but even I stand in awe of the complete retardedness that is javascript.

      What happened to languages that pick some things and then do them well? JavaScript seems to have evolved to try to do everything, and yet it doesnt do anything even close to well at all.

      --
      "His name was James Damore."
    2. Re:Obvious by TheDarkMaster · · Score: 1

      Good question. My educated guess is that the first problem would be security, after all you would be running a complete application simply by accessing the page. The second problem would be that as each one have a favorite language, in deciding what would be the "lingua franca" of the Web we would have a Digital World War

      --
      Religion: The greatest weapon of mass destruction of all time
  7. Crisis Averted! by GreyLurk · · Score: 4, Insightful

    Whew, I'm glad we managed to get everyone to switch off of memory-leaking and CPU intensive Flash stuff over to standards compliant HTML5 and JavaScript then!

    1. Re:Crisis Averted! by Anonymous Coward · · Score: 0

      Next stop: all images in SVG.

    2. Re:Crisis Averted! by Anonymous Coward · · Score: 0

      That's always been the problem with HTML5, yes we're moving towards more standardisation, but the problem is, the standard is fucking shit.

      Standardising around shit never seemed that smart an idea to me.

    3. Re:Crisis Averted! by Anonymous Coward · · Score: 0

      Flash was beheaded for being a property closed source solution in an open web.
      Javascript is your proverbial polished turd. Literally, a weekend project for it's designer (took about 10 day to design and implement!), Javascript is just a mistake.
      It's useful for one, and one thing only: Sliding menus and videos. Nothing more. And this is only the absence of an actually good solution.

      Besides, why would you want to run applications in your browser even if performance was perfect? If your window management is really that bad, or your system lacks any and all means of securely sandboxing a running app, maybe you should just fix that? Why would you want to do a whole interpreter and a vm inside the browser - a program designed to download and display HTML documents? It's all just very very silly.

  8. Bikeshedding = Slashdot by Flere+Imsaho · · Score: 2
    --
    It gripped her hand gently. 'Regret is for humans,' it said.
    1. Re:Bikeshedding = Slashdot by Anonymous Coward · · Score: 0

      Slashdot is often the opposite of bikeshedding. People here think they're smart enough to understand things they actually know nothing about, so half the words here are about extremely complex things (e.g., the climate system, the economy) being mis-analyzed by unqualified people.

    2. Re:Bikeshedding = Slashdot by ideonexus · · Score: 1

      Sounds very similar to Sayre's Law, which I suppose is Parkinson's law applied specifically to academia.

      --
      i ~ Celebrating Science, Cyberspace, Speculation
  9. One thing that's horribly slow on my iPad by 93+Escort+Wagon · · Score: 1

    Animated GIFs.

    I think they're of the devil, but for some reason a lot of baseball stat heads still use them instead of a video format when they want to post a few seconds of a game for illustrative purposes. It's weird because these are generally young guys, not the old farts who you'd expect not to have changed their workflow since 1995...

    JavaScript on the iPad? That doesn't seem slow - certainly not enough to where it registers anyway.

    --
    #DeleteChrome
  10. Repeating the obvious by Anonymous Coward · · Score: 0

    I'm old enough to remember the assembly language versus high level language debates. I even remember the augments about virtual memory versus overlays. Why are we retreading the same arguments for fifty years? Note a program that runs slower than desired may still be quite useful; a program that generates incorrect results is worthless perhaps even dangerous.

  11. Spell-check in IDEs by tepples · · Score: 4, Informative

    Coincidentally, most IDEs for javascript have little to no spelling assistance

    Spell-check in IDEs generally relies on static analysis of the variables in scope at any given point in the program. The more dynamic a language's type system is, the harder it is to statically find the names of symbols in scope at any given point in the program. PHP and Python are kinda-sorta OK for this because all global variables are out-of-scope (PHP) or read-only (Python) unless declared otherwise at the top of a function's definition (or, in PHP, unless the variable is one of the predefined superglobals, whose names are all uppercase starting with $_). This way, the IDE can parse a function for all variables assigned to in a function and assume they're local. JavaScript, on the other hand, defaults to making all variables global unless declared local with the var keyword.

    Spell-check also relies on static knowledge of what source code files are in scope. This is dead easy for Java. In PHP you scan for require_once, and in Python you scan for import, but even then, a module is occasionally conditionally imported, and importing has side effects. JavaScript can't include JavaScript at all except by appending a <script> element to the HTML DOM with the src= attribute referring to the other script, and the idiom for that is harder to recognize than a simple import statement.

  12. What's better than JS? by tepples · · Score: 2

    It looks like you want to get rid of all JavaScript in web pages. What's a better way to present interactive forms over the Internet that doesn't involve reloading an entire 100 kB page whenever the tiniest bit changes and doesn't involve paying someone to make six different native applications, one for each operating system?

    1. Re:What's better than JS? by Arker · · Score: 4, Interesting

      I am not the GP but I sympathise with his comment.

      "It looks like you want to get rid of all JavaScript in web pages. What's a better way to present interactive forms over the Internet that doesn't involve reloading an entire 100 kB page whenever the tiniest bit changes and doesn't involve paying someone to make six different native applications, one for each operating system?"

      Dont force a single 100kB monster to begin with, doh. Break the monster down into bytesized chunks and this suddenly doesnt look so impossible to do in straight html, now does it? You can even keep your 100kB script as well if you want, but you must put a link to the straight version in the noscript tags at the very least. (Personally I urge you to give me an option to use the straight version even in a scriptless browser, otherwise you will probably force me to disable all scripts on your site, but it's not a formal requirement like the noscript tag.)

      From day one that was the way you were supposed to do it when you added scripts to your web pages, and it's not that I want to remove all scripts from the web, I want to remove this idiotic assumption it's ok to skip the webpage, hand out a script instead, and pretend all is well. It isnt. Javascript is fine for making a fancier version of a webpage (but only as long as you dont use it as an excuse to skip the simple version.) But scriptless browsers are an integral part of the web as long as it's existed and they arent going away. If you dont support them you arent supporting the web and are missing the point of the web.

      With the current threats and trends in malware, you're likely to see only more and more scriptless browsers. Browsers that support scripts just fine are being told not to support YOUR scripts - at least not until you are trusted. Making a good first impression more and more means making a good first impression WITHOUT grabbing your ecmascript crutches, without just ASSUMING that the visitor is immediately comfortable enough with you to be touched in that way.

      Even if you cant figure out how to write a webpage or hire someone that knows, you should not need to pay for 6 different native apps - unless your app has a really niche market at least. Just get it written once in a high level language, release it GPL so that anyone interested in porting it to a new platform can. You'll likely have ports contributed back faster than you can pick out the right guy internally to receive them. (This part assumes your app does something that a computer literate person might find useful, of course, it strikes me that is a blind assumption though.)

      Dont tell me your afraid to release your precious source - you're doing that right now every time your server sends out 100kB of ecmascript already.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    2. Re:What's better than JS? by Anonymous Coward · · Score: 0

      A standardized (or at least, well-documented) protocol that anyone who cares can use to implement their own user interfaces (which, history shows, people will do if the service is a useful one.)

    3. Re:What's better than JS? by foniksonik · · Score: 3, Informative

      Sorry. Things change. It won't be long before browsers are just wrappers around the JSVM and all web addresses are just sandboxed applications running in it. The web is the biggest App Store there is.

      You want raw data in a structured format? There are REST APIs for that, they return JSON. HTML is too verbose by far as the default response and is useless for any other client besides an HTML renderer.

      Text content is moving to Markdown as a standard as well. It's quicker and easier and covers text formatting. Clients should just render it directly.

      I could go on but it's probably lost on you. Suffice to say that modern server app development is evolving to be service driven and client agnostic. HTML is one of many targets. Why write server apps or content engines (CMS/blog/forum) for a single client when you can instead create a server based API and several thin client apps (JS, DART, iOS, Android, C++, .Net, Lua, etc).

      --
      A fool throws a stone into a well and a thousand sages can not remove it.
    4. Re:What's better than JS? by Anonymous Coward · · Score: 1

      > Sorry. Things change. It won't be long before browsers are just wrappers around the JSVM and all web addresses are just sandboxed applications running in it. The web is the biggest App Store there is.

      Not my Web. Most Slashdot ads are lost on me because of that. Heck: I'd even *read* an interesting ad or (gasp!) click on it. But: no Javascript => no ads? Too bad, so sad.

      > Text content is moving to Markdown as a standard as well. It's quicker and easier and covers text formatting. Clients should just render it directly.

      Yeah, great: I'd take Markdown any day (I'd probably prefer *that* to the ugly hack HTML is anyway -- at least when some form of stylesheet for this is agreed upon). It's the mixing up of documents and active content I detest with passion. I'm browsing the internet to *read* something, not to have *your crappy code* executed on my computer without being asked. Politely.

    5. Re:What's better than JS? by evilviper · · Score: 2

      It looks like you want to get rid of all JavaScript in web pages.

      He doesn't, but he makes a good point that "2%" performance isn't good enough, and you should avoid javascript if you can.

      I consider this most important for projects like Firefox OS, which are pushing a platform for slow, mobile devices, where Javascript is the only programming language available.

      What's a better way to present interactive forms over the Internet that doesn't involve reloading an entire 100 kB page whenever the tiniest bit changes

      In my extensive experience, reloading the page every time is actually still FASTER and makes for a more responsive experience. Compare gmail with JS or in classic mode... Classic mode isn't as shiny, but it sure moves a lot faster. Or look at Netflix's queue... Insane delays from clicking the "move to top" arrow, until it actually happens, or the delete button, while reloading the page on each button press would happen in a fraction the time, and would work far better on low-end devices (and they wouldn't need a super-crippled "mobile" version of their site).

      A tiny bit more load on your server, in exchange for a much more responsive client-side experience. A bit more bandwidth usage, but compression and caching of all other page elements should make it pretty insignificant.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    6. Re:What's better than JS? by foniksonik · · Score: 1

      So your big complaint is ads? You do know they are inevitable regardless of the tech employed. If HTML had never become the standard and everything was written in C++ you would still get ads. Look at iOS and Android apps. Look at the latest Ubuntu search (and Windows now too). There are ad supported (and malware linking) apps all over. It's even worse as they have less sandboxing and can cause more problems.

      --
      A fool throws a stone into a well and a thousand sages can not remove it.
    7. Re:What's better than JS? by Anonymous Coward · · Score: 0

      Sorry, but I'm not going to bother with that. Non-interactive (ie: static) websites suck, and the only reason they exist in the first place is for legacy reasons: there was a time when it wasn't possible to do anything more, and then even when there was you couldn't count on most people to have support for the dynamic feature set. But that time is LONG past (except for the minuscule handful of people who cling desperately to the past). Now, pretty much everyone has access to those features, and I've got a lot of shit to do, so I'm not about to double my work by having to maintain separate static and dynamic codebases for the benefit of WAY less than 1% of users. I have better things to spend my time on.

    8. Re:What's better than JS? by tepples · · Score: 1

      A standardized (or at least, well-documented) protocol that anyone who cares can use to implement their own user interfaces

      The protocol that the world appears to have standardized on for this purpose consists of HTTP, HTML, CSS, and JavaScript. Yet certain people continue with the phobia of JavaScript.

    9. Re:What's better than JS? by tepples · · Score: 1

      In my extensive experience, reloading the page every time is actually still FASTER and makes for a more responsive experience.

      I agree with you that some sites using AJAX are poorly designed. I disagree that sites using AJAX must necessarily be slower than reloading the whole page for every little piddly action. Say you've landed on an article with 100 comments in the discussion section. Every time you expand or collapse a thread, the article and all 100 comments reload. Every time you begin, preview, or submit a comment, the article and all 100 comments reload. I don't see how that'd be so convenient for people on slow and/or metered Internet connections.

    10. Re:What's better than JS? by Arker · · Score: 1

      "So your big complaint is ads?"

      Did you really not even read the message you replied to?

      He said (and I agree) that the problem is NOT ads. But if you choose to make your ads annoying javascript contraptions instead of readable text, THEN we will block your ads. And not feel bad at all about it. If you want us to see your ads, you know what to do.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    11. Re:What's better than JS? by TheDarkMaster · · Score: 1

      Ajax is useful. The problem is that few know how to use it efficiently

      --
      Religion: The greatest weapon of mass destruction of all time
    12. Re:What's better than JS? by shutdown+-p+now · · Score: 1

      The problem with that protocol is that it, to state things simply, sucks. Which is not surprising, given that it is an ad-hoc hodge-podge of technologies, most of which were not particularly good in the first place, and which were also used for the purpose their design did not originally anticipate.

      It's basically one of the worst examples of design-by-mob: take random things that people know, put them together, and add a lot of kludges so that the whole thing works. Yes, it does work, but that's about the only good thing that can be said about it. It's certainly not a cause for celebration - at best it's something you grudgingly accept on a temporary basis, while working on a better solution.

    13. Re:What's better than JS? by evilviper · · Score: 1

      I disagree that sites using AJAX must necessarily be slower than reloading the whole page for every little piddly action.

      That's been *almost* exclusively my experience.

      Every time you expand or collapse a thread, the article and all 100 comments reload.

      That's assuming you WANT the threads loaded by your browsers, but hidden from your view for some reason. Instead, if you had the threads expanded, you wouldn't have to worry about it.

      But if you're talking about JS loading each comment...

      Every time you begin, preview, or submit a comment, the article and all 100 comments reload.

      But see, you're still making the same number (or perhaps MORE) HTTP requests with JS as you would with plain HTML. Latency is in no way reduced, and you're not really saving time on the client side, as they've got the latency, and THEN the browser has to essential re-render the whole page after the content change in the middle. However browsers handle that kind of change, I've never seen it done FASTER than loading another static page.

      I don't see how that'd be so convenient for people on slow and/or metered Internet connections.

      As I said, the mod_gzip your HTML page is only 1/10th the uncompressed size, and all the CSS, images, etc., are all cached locally, so I say you're saving VERY, LITTLE bandwidth, and you're causing more client side delay and unresponsiveness.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    14. Re:What's better than JS? by tepples · · Score: 1

      That's assuming you WANT the threads loaded by your browsers, but hidden from your view for some reason.

      You'd still have to reload all comments that are still visible but not currently being collapsed or expanded. And you'd have to use either horrendously long URLs that reflect the entire set of currently expanded comments or POST forms that break "open in new window" and "share" functionality.

      But if you're talking about JS loading each comment... you're still making the same number (or perhaps MORE) HTTP requests with JS

      HTML without script gives you only two ways to do it: either load the comments being expanded while reloading all those that are still visible, or put each comment in an iframe and load each comment with a separate HTTP request. AJAX allows a middle ground: a single HTTP request containing a batch of only those comments that are being expanded or have been posted since the last update. The request would say, in effect, "give me all children of comment X, and all comments that whose posting date is after that of comment Y".

      and THEN the browser has to essential re-render the whole page after the content change in the middle.

      The browser has to re-render the whole page if the server resends the whole page. It's a re-render either way, therefore a wash. Is there a specific reason that you have found appendChild-triggered re-renders to take longer than the first render of a particular page, other than that there's no animation of blanking the screen and re-filling from top to bottom?

      As I said, the mod_gzip your HTML page is only 1/10th the uncompressed size

      1/10 of a 4 kB delta is smaller than 1/10 of a 100 kB or bigger full reload.

  13. Supported by more browsers by tepples · · Score: 1

    for some reason a lot of baseball stat heads still use [GIF animations] instead of a video format

    Some browsers can view only H.264 and animated GIF. Other browsers can view only Theora, WebM, and animated GIF. Some, such as the latest version of Internet Explorer that runs on Windows XP, can't view anything but animated GIF without plug-ins that may or may not be installed and that the current user may or may not have privileges to install. If the only video format supported by all browsers is animated GIF, what should a site use to reach the most viewers?

  14. Misses the point by Anonymous Coward · · Score: 0

    The author should get a clue.

    The real point is that memory allocation is expensive. With a garbage collector freeing memory can be super-expensive too,

    But without those super-hyper-unobtainium batteries, memory allocation on mobile devices will always
    be a problem. It will chew lots of Joules compared to other operations. Your app will be known as
    both slow and a battery waster if you do too much memory allocation.

    Don't be an idiot and allocate (and free) an image for every frame of an animation (as it appears the author thinks
    is reasonable practice).

    Think about what's really going on - don't create new objects all the time. Any reasonable OS has to wipe the
    memory it gives you (for security) and then there's the garbage collection issue.

  15. The editors don't RTFA by tepples · · Score: 4, Funny

    it seems like there could be a pretty simple automated dupe-checker that flags it and tells the editors

    It's called the "visited link color" function. Or perhaps not even the editors read the featured article.

    1. Re:The editors don't RTFA by Anonymous Coward · · Score: 2, Informative

      - Is there only one editor, who always reads every single featured article?
      - Are slashdot editors barred from clearing their browser histories?

    2. Re:The editors don't RTFA by Anonymous Coward · · Score: 0

      it seems like there could be a pretty simple automated dupe-checker that flags it and tells the editors

      It's called the "visited link color" function. Or perhaps not even the editors read the featured article.

      I always thought the "f" stood for a different word.

    3. Re:The editors don't RTFA by tepples · · Score: 2

      Is there only one editor, who always reads every single featured article?

      Ideally, the buck is supposed to stop with an editor-in-chief.

    4. Re:The editors don't RTFA by gstoddart · · Score: 1

      Ideally, the buck is supposed to stop with an editor-in-chief.

      If this were a newspaper where the 'editor in chief' was responsible for that, sure.

      I'm not convinced that 'editor' at Slashdot meets the same level of rigor. In fact, I'm quite certain it doesn't.

      --
      Lost at C:>. Found at C.
  16. Re:Bikeshedding by binarylarry · · Score: 1

    I think I had one of those at TGIFridays one time.

    --
    Mod me down, my New Earth Global Warmingist friends!
  17. More Full Response by El+Royo · · Score: 4, Insightful

    I made a comment to a poster over on the original posting of this. I think it's worth expanding upon in case people are persuaded by the arguments in the paper.

    First off, just as TFA predicts, I'm not going to try to conquer his mountain of facts and experts by presenting a mountain of citations. Instead, I'm going to point out where his conclusions are not supported by his facts and point out his straw man arguments and his attempt to convince us through overwhelming expert opinion.

    The straw man: In the article, he presents two scenarios (photo editing and video streaming) and claims that you can't reasonably do those because of memory limitations (on the iPhone/iPad). He then concludes you can't produce useful apps because you can't do those two. I couldn't find any citations of people attempting to do this on mobile using JavaScript. Choose the right tool for the job here. I'll give him these two use cases (and several others: 3D Games, audio processing, etc), however to extrapolate from here that no useful apps can be produced (ever!) using JavaScript is a leap too far.

    Next, he spends a lot of time diving into the particulars of garbage collection (GC). I'm going to grant him practically every point he made about GCs. They're true. And, it's true that mobile is a constrained environment and you must pay attention to this. But, this is largely known by developers who are trying to write high-performance JavaScript applications on mobile. Hell, -anyone- writing high-performance apps in any language need to be aware of this. If you allocate memory during your animation routines in a game you're asking for trouble, regardless of the language. So, to me, this part is just a call to pay attention to your memory usage in your apps. This is really useful advice and I will be paying even more attention to the new memory tools available in the latest Google Chrome dev tools.

    One of the biggest problems in the rant is the comparison of pure computing performance and his claim that ARM will never be as fast as desktop. I'm going to again grant that this is true. However, this means crap-all for most apps. Tell me: How many apps do you have one your phone that are processor bound? None? One? Two? The vast majority of apps spend their time either waiting on the user or, possibly, waiting on the network. You can write a lot of really useful apps even given constrained processor and memory. Anyone remember the Palm Pre? The TouchPad? Most of those apps were JavaScript and they worked just fine.

    This brings me to the point of all this, TFA's author focuses on performance. However, users focus on responsiveness. JavaScript is perfectly capable of producing responsive applications. Sometimes, it takes attention to detail. Nothing is ever 100% free and easy. JavaScript is not a magic solution and those of us who think that JavaScript has a future in mobile app development know this. This is why programmers get the big bucks. Writing mobile apps, you need to be aware of the effects of CSS, memory, processor, responsiveness and more.

    --
    Author of Enyo: Up and Running from O'Reilly Media
    1. Re:More Full Response by Anonymous Coward · · Score: 1

      > TFA's author focuses on performance. However, users focus on responsiveness.

      A very over looked point when it comes to the technical design of UI. User's perception of performance is not the same as the actual performance and in a UI you have to balance between the two.

    2. Re:More Full Response by Anonymous Coward · · Score: 1

      I can give you an example of it. Me. A recent. Client wants a photo editing app for ALL of the mobiles, so I produce an IOS quote and a slightly larger Droid quote (Android tends to have slightly more longer dev times due to all the bloody handset incompatibilities I need to test for especially when doing hardware stuff (such as cameras!). Client comes back and says "Use phone gap".

      Its an awful platform, and end users can just tell they've been short changed with a wrapped web app, but the client is always right. So he gets his bloody phonegap app. Of course phone gap actually doesn't make things "write once run anywhere", because you need to recreate UIs to look native on both apps (And no, jquery mobile etc do NOT look "native"). Then apple bounces it saying basically "Its not native, gtfo" , so we have to rewrite the ios one natively , which fortuantely doesnt take too long since ObjC is a surprisingly productive language when you wrap your head around its eccentricities. And now we have a javascript mess running on android and a slick as hell IOS one. The whole thing ended up costing MORE than the original quote for native on both platform and whilst the droid one LOOKS ok, its pretty obviously not native simply by the lagginess when a processor intensive operation happens, since at the time (Not sure about now) phonegap on the droid didnt support webgl, so I couldnt use shaders for the faux instagram type effects.

      He's dead right about this. HTML5 is a dead end technology on mobiles.

    3. Re:More Full Response by CadentOrange · · Score: 1

      One of the biggest problems in the rant is the comparison of pure computing performance and his claim that ARM will never be as fast as desktop. I'm going to again grant that this is true. However, this means crap-all for most apps. Tell me: How many apps do you have one your phone that are processor bound? None? One? Two?

      The other issue you're not addressing it runtime memory requirements. From the GC performance chart, the best performing GC that provides near native performance does so by requiring 5x more memory. This is going to impact the number of concurrently running apps on your phone/tablet before things start slowing down. Users prize snappy interfaces and if their mobile device slows down then the knowledgable users will bring up a task manager to figure out what's going on.

      Do you want to stick around to see what they'd write on your app's page in the App Store?

    4. Re:More Full Response by Anonymous Coward · · Score: 0

      This is going to impact the number of concurrently running apps on your phone/tablet before things start slowing down.

      This isn't even a use case on mobile devices. It's not like you're running a windowed operating system on them. Android for example aggressively kills off anything that isn't currently active.

    5. Re:More Full Response by Anonymous Coward · · Score: 1

      Its an awful platform, and end users can just tell they've been short changed with a wrapped web app...HTML5 is a dead end technology on mobiles.

      Your conclusion doesn't really follow at all. You use a crap platform to make an app produced to unrealistic and misguided customer technical interference, then spent an extra amount of time rewriting the iOS version of it, hence HTML5 sucks.

      What?

    6. Re:More Full Response by Luyseyal · · Score: 1

      I think you're overstating the case of performance verses responsiveness. He does specifically point out that GC is negatively impacting UI response times and that that is not going to work.

      I agree with you that people who work in the problem space know about memory management by experience. However, that JavaScript makes it so difficult to manually manage memory seems to be his real point.

      Lastly, if we could solve the network speed problem, you would just outsource real CPU/memory apps to the server and simply RDP* the relevant bits back to the mobile device.

      -l

      * RDP or whatever protocol makes the most sense. I just used RDP to get the example across.

      --
      Help cure AIDS, cancer, and more. Donate your unused computer time to worldcommunitygrid.org. Join Team Slashdot!
    7. Re:More Full Response by phantomfive · · Score: 1

      Lastly, if we could solve the network speed problem

      That sounds like a big problem, especially through the air....

      --
      "First they came for the slanderers and i said nothing."
    8. Re:More Full Response by shutdown+-p+now · · Score: 1

      If you allocate memory during your animation routines in a game you're asking for trouble, regardless of the language.

      That's not true at all. If you allocate memory during animation in a language with deterministic memory management, you have a pretty good understanding of what it'll cost and whether you can afford it (and in many cases, the answer is yes).

      Note that animations are not specific to games. One common case where you allocate memory during an animation is when the user is scrolling a list that is backed by a dynamic data store (i.e. items are generated "on the fly").

      More importantly, the problem with GC is not allocation, it's deallocation (or rather the object graph walk that precedes it). You might have not allocated anything inside your animation loop, but you have surely allocated something at some point in the past. You have no guarantee that the GC does not decide to kick in, pause your loop, and do a graph walk to clean that up, if e.g. the OS reports that it's low on memory.

      This brings me to the point of all this, TFA's author focuses on performance. However, users focus on responsiveness. JavaScript is perfectly capable of producing responsive applications.

      I would argue it's exactly the other way around: author focuses on responsiveness, and brings performance largely as part of the discussion about responsiveness. That's precisely why he dedicates so much time specifically to GC, and comparatively little on other things that affect raw perf (like dynamic typing) - because GC and responsiveness don't mix well.

  18. TLDR version by Rob_Bryerton · · Score: 4, Informative

    Actually a pretty well written piece, if a bit wordy. I see a lot of people commenting here are perhaps missing the point, thinking that the author's angle was JS=BAD. Not at all. My take was his issue was not so much with JavaScript, but with Garbage Collected languages in general.

    An important point he made regarding GC routines and how they tend to be unpredictable in terms of when and how long they run. Also, much was discussed on his observations that, if you have several times more memory available than what your app needs, the GC routines are very non-intrusive. However, when you get into a low memory situation, the performance hit from GC is huge and causes obvious stutters in the application and/or it's UI.

    Also, some discussion on the irony of working around (or trying to "spoof") the GC by using various manual techniques, and how that almost amounts to manual memory management. All in all, a really interesting read.

    1. Re:TLDR version by drcheap · · Score: 1, Informative

      Your super short summary was still 3 paragraphs long... TL;DR indeed!

    2. Re:TLDR version by Anonymous Coward · · Score: 1

      A better summary would be...

      Friends don't let friends use garbage collected languages.

    3. Re:TLDR version by angel'o'sphere · · Score: 0

      If you are in a "low memory situation" in a managed language, you likely would be in one in a manual managed language as well.
      Bottom line it boils down how huge the problems are you want to tackle and how naive your approach is.
      I would assume a programmer with ten years of experience in C/C++ or similar is likely less naive than a 'similar' experienced Java or C# programmer.
      I would expect an experienced developr to know his platform, but in our days it is no longer so painfull needed. If your team sucks because it can not tackle the platform, it is often possible to hire an expert. In the old days YOU where expected to be the expert and to know what you did.
      E.g. in the blog article the author brings up an example where you (in his opinion) have the same data 5 times in various buffers. A picture taken by the camera, while the camara shows the scene, and the picture is in a buffer while it is written to disk, and scaled somewhere else and uploaded to a website at the same time (using up another buffer). Well, first off all the two buffers for disk and network don't buffer the whole image, but a "block" or a few "blocks". Second of all this problem is completely language independent. The buffers likely not even exist in the "application" space but in the "device drivers".
      The argumentation of that author was as naive as many programers are when they apply "straigth forward" algorithms to huge data sets.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  19. maybe if you bolded every other sentence by Anonymous Coward · · Score: 0

    like the author, then people WOULD believe YOU

  20. 17 by Anonymous Coward · · Score: 0

    A page references itself 17 times, with a link to itself each time, and yet is still inscrutable. WTF are they talking about on that page? I want back the 17 seconds I wasted reading the first few paragraphs of that douchery.

    1. Re:17 by OneAhead · · Score: 1

      Whine me a river. I wish I would have found a better reference for that concept, but I don't have all day. Since you already wasted 17 seconds on it, feel free to double down and google up a better reference and post it here.

  21. It's not the language that's the problem by dutchwhizzman · · Score: 1

    It's not the language that's the problem but the monolithic page in which you put all the content. Just cut it up into the static bits and the small dynamic bit. Any other language, whether native, bit code or machine code will require reloading if you put all your content in a single file and you change the file. While you're at it, you might as well put different parts of your page in different files, so you can re-use things like a menu bar, styles, headers and footers for other pages.

    --
    I was promised a flying car. Where is my flying car?
  22. Not just console by dutchwhizzman · · Score: 1

    I happen to have an average of about 200 tabs open on most of my daily use machines. This tends to eat most of the resources that my machine has, regardless of how modern the machine is. If it's an old clunker, it chokes on less and I generally don't make it that far before I have to kill the browser and restart it. It seems impossible for any OS vendor and any "full featured" web browser to just deal with the limitations of the system and keep the application snappy and usable.

    Sure, it is way faster if you load just a few pages, but I just don't close tabs I think I might need later. Bookmarks accumulate so fast and searching them is bothersome, let alone cleaning them out. Regardless of my reasons why I do it, I see a lot of people hit the limitations of the model in which speed is achieved by unlimited resource claiming and not by efficient coding, if it comes to web browsers. The reason that mobile is in the picture is because a mobile device is way less powerful and battery life is much more of a concern than for a desktop or AC powered laptop.

    I wish they would test "speed" by simultaneously loading 200 tabs of content-rich web pages on a single core system with 512M ram available to the browser and a slow magnetic media drive (5400rpm laptop drive) for storage. In my opinion, it would be a way more realistic test than just loading a single page, keeping everything in RAM and only looking at methods that will bottle neck at CPU/GPU or memory access. I bet that "speed improvements" in the JS engine would suddenly come from very different optimizations than from the current philosophy and that they would greatly benefit "mobile" too.

    --
    I was promised a flying car. Where is my flying car?
    1. Re:Not just console by CadentOrange · · Score: 1

      How do you manage 200 tabs open at the same time? How do you easily get to the tab you want?

    2. Re:Not just console by Anonymous Coward · · Score: 0

      I close my Firefox when I run out of memory. After restart it reloads only these pages which I am actually looking at. That change is pretty recent, not older than two years, before that it loaded all tabs at once when "Restoring session", it was horrible.

      BTW, my "record" is 180 tabs in one tabgroup (I use TabGroupManager extension), other tabgroups were close to empty at that time.

    3. Re:Not just console by Anonymous Coward · · Score: 0

      I use it the same way as the grandparent. Answer in short: Either remember the location and cycle or search again.

      Now a little inside look about the googling process:
      I usually search for answers, so couple of google icons might mark the beginning of new topic followed by results which looked like they might help. Often searching takes a few iterations, first you google whatever you started looking for. Then you likely find the correct term (or just the widely used one) and you search again and might get a pile of better answers. With unknown field it often takes many iterations.
      When I find a good enough answer, I usually just jump to the next topic. When I didn't find a good one, I will either go to the other round with the opened tabs (closing them one by one, leaving open only these which might give a clue). Now I will likely only have 5 tabs per that topic (one or two google searches followed by best hits). Most tabs are left open when I actually find successful answers and just move on. Now when I want to go back to some previous tab I just cycle through them (and again closing any tab that has lost it's relevancy).

    4. Re:Not just console by Barryke · · Score: 1

      Exactly, i do all of the above. Except i do pull up a new browser (row of tabs) to seperate unrelated groups of tabs.

      --
      Hivemind harvest in progress..
    5. Re:Not just console by tofarr · · Score: 1

      No offense, but your use case seems more of a problem for the browser vendors than web page vendors to me. The browser on my phone seems to unload background tabs so that the page reloads when I view it if the total memory usage exceeds a certain point - This seems like a good strategy to me (tabs stay open, resources are diverted towards what I am actually using).

      Expecting a web page creator to write for the situation where there are 1/200th of the resources available seems a tad absurd to me.

      Disclaimer : I work with web based GIS applications which can consume a lot of memory / bandwidth / runtime if not optimised correctly, [and can still do so even if they are!]

  23. node.js by dutchwhizzman · · Score: 5, Funny

    Try looking into node.js and see all your fears come true.

    --
    I was promised a flying car. Where is my flying car?
  24. but it's slow by dutchwhizzman · · Score: 1

    True, animated gif is the most widely supported "movie" format if you look at all target platforms. However, there currently is no technology implemented in browsers that will take an animated gif, re-render it into something that can be accelerated by the video card and use that for output. This results in the browser pumping all the frames non-accelerated to the video card. Devices with limited (read, all devices that have more than a few tabs open, or mobile devices) will hit limitations of the hardware pretty fast with this sort of animation.

    --
    I was promised a flying car. Where is my flying car?
    1. Re:but it's slow by tepples · · Score: 1

      If the user's browser has more than one tab open, it won't send frames in inactive tabs to the screen. If your site has a large audience on mobile devices, and you're a big enough company to license footage from MLB, you can probably afford to create a native app for iOS, a native app for Android, and a native app for Windows Phone.

    2. Re:but it's slow by viperidaenz · · Score: 1

      Maybe because animated GIF has been reasonably performant on x86 browsers since the 486 days.

  25. oblig: why is this on Slashdot? by Anonymous Coward · · Score: 0

    ..."that we should incentivize good, evidence-based, interesting discussion and discourage writing witty comments."

    Next, he'll expect you to read the 10,000 word article!

  26. Something wrong here by vikingpower · · Score: 1

    The very same blog post was already the subject of an article on Slashdot last week. What is going on here ??

    --
    Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
    1. Re:Something wrong here by zeptic · · Score: 1

      You must be new here...

    2. Re:Something wrong here by vikingpower · · Score: 1

      No. Signed up years ago ( see my user ID ) . Optimistic, maybe, or naive ?

      --
      Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
  27. Both submissions Opera is ignored by Trax3001BBS · · Score: 1

    Opera browser (versions up to 12) was shown on one graph (iphone 4S) in the article and it kicked some serious a$$ but never mentioned again.

    One reply to the article was about Opera being only browser to run Google Wave, kind of... "The only browser that ran it with anything resembling
    “speed” for it’s first year or so was Opera, and Opera never really worked very well with it anyway."

    I enjoy security through obscurity but Opera is just too good a browser to ignore.

    1. Re:Both submissions Opera is ignored by Anonymous Coward · · Score: 0

      The current Opera versions are wrappers around Chrome, so you can look at the V8 figures and imagine its Opera.

  28. "bikesheding"??? by Anonymous Coward · · Score: 0

    What in Sam Hill does that mean?

    1. Re:"bikesheding"??? by Anonymous Coward · · Score: 1
  29. Did you mean one comment at a time? by tepples · · Score: 1

    Dont force a single 100kB monster to begin with, doh.

    Say a Slashdot story has 100 comments, and each comment is 1 kB. How should these comments be sent to the browser?

    Break the monster down into bytesized chunks

    Without JavaScript, you can't use AJAX, and without AJAX, you can't retrieve comments incrementally as the user requests them and add them to the page. Or are you talking about displaying one comment on each page the way certain mailing list archives do?

    1. Re: Did you mean one comment at a time? by Anonymous Coward · · Score: 0

      OK, devil's advocate here... what about iframes? One iframe for each top-level post, with nested iframes for subthreads, and so on down the line...

      Not sure it's a good idea, but it seems like an option.

    2. Re: Did you mean one comment at a time? by Anonymous Coward · · Score: 0

      OK, devil's advocate here... what about iframes? One iframe for each top-level post, with nested iframes for subthreads, and so on down the line...

      Ugh. You should burn in hell for that idea. Do you think maybe you could work the blink tag in there, too?

  30. Type Safe C++ Variant: Sappeur by Anonymous Coward · · Score: 0

    I am a C++ developer for more than 16 years now and I did some Java and C# development in the past. Based on that experience, I can fully attest the correctness of the reasoning presented in the article. In addition, I am aware of the fact that practical (as opposed to theoretical) C and C++ programs are chock-full of security issues, most of which can be attributed to the lack of type safety in C and C++.

    Being an engineer, I started to develop a "fix" for the deficiencies of C and C++, but at the same time tried to retain all the good aspects such as stack allocation, value arrays and so on. The language is called Sappeur (from Sapeurs-Pompiers, french for Firebrigade-Member (which I once was)) and technically is a compiler that translates into Posix-compliant (pthreads) C++ code. That means it should compile into binaries on all major platforms from phones to mainframes.

    Here it is:

    Disclaimer: Yes, the current compiler version definitely is not polished, it probably is in some ways a quick hack, but if you work around the quirks, I am quite positive it can provide real value relative to Java (more efficient, better resposniveness, smaller memory footprint) and relative to C or C++ (more secure).

    Especially when you read things like this

  31. Original "GP" poster here... apk by Anonymous Coward · · Score: 0

    I get no ads or malscripted content via this creation of mine:

    APK Hosts File Engine 9.0++ 32/64-bit:

    http://start64.com/index.php?option=com_content&view=article&id=5851:apk-hosts-file-engine-64bit-version&catid=26:64bit-security-software&Itemid=74

    I get NO malware/malscripted pages (redirects or otherwise) malware because of it.

    (They are dangerous -> http://techtalk.pcpitstop.com/2013/06/26/malware-more-likely-to-come-from-legitimate-sites/?know-notenough= if that source isn't enough I can provide CISCO stating the same)

    Most are Dynamic DNS + FastFlux based botnet attacks & are host-domain based (hard to kill vs. IP address based ones & it is the predominant design for malware/botnets).

    I operate @ the IP stack level via tcpip.sys since hosts is a filter for it in Ring 0/RPL 0/kernelmode far before (& faster than) browser addons in Ring 3/RPL 3/usermode (which slow down usermode browsers even more - fact).

    Complaint to /.: Can't post more than 2 links due to the "lameness filter" on posts (which is lame in & of itself when it suppresses vaild information).

    Anyhow/anyways: FireFox users have NoScript - use it!

    I use Opera 12.16 64-bit & set its GLOBAL site preference default to NO javascript, plugins, cookies, frames/iframes - in essence, things that get actively exploited maliciously (and then IF needed for full function on a site, then, as an "exception site"? I turn it on ONLY for that site only (think ecommerce or online banking etc.)).

    Combining hosts & no javascript works (on smartphones since they have a bsd ip stack)!

    APK

    P.S.=> I also surf far, Far, FAR faster too not seeing adbanners or processing javascript - in fact, if you take a look @ the list of enumerated benefits it yields in added speed, security, reliability (vs. DNS faults especially) & even anonymity to an extent? You'll understand WHY I created it + made it freely available to others also - necessity WAS "the mother of that invention"... apk

  32. It's more about developers than technology by fzammett · · Score: 1

    Bottom line: just because you're using a GC'd language and you CAN ignore memory management, doesn't mean you SHOULD. That goes for JS, Java or any other GC'd language in existence.

    I hate to go off on a tangent... but that won't stop me from doing so, because I think it's actually the core of the issue and is entirely non-technical:

    This all goes back to the abysmal state of many (most?) "modern" developers.

    If you grew you with computers at the time I did, the late 70's/early 80's, and you learned to program those early 8-bit home computers, you kinda take this stuff for granted (memory management I mean). You just inherently think differently than "modern" developers do. You see things at a much lower level... even when you're working at a high level of abstraction, your mind automatically goes lower... instantiating an object in Java? You're mind at some level is thinking about how memory is being allocated, how the object reference is being stored, etc. Hell, you even start to think about the messages the OS is passing around, how those messages must map to C functions, and how those functions ultimately resolve down to assembly.

    I'm NOT saying you KNOW all those details... not really... you just know the concepts... and I'm certainly not saying such details are relevant most of the time because they're not... I'm just saying that's the way our brains work... we can "see" all the levels below the one we're actually working on in our minds' eye, if only in a conceptual sense, and it happens without trying.

    I's because we generally started learning at those low levels and everything over the years has built up logically from there. Most of us started with BASIC but quickly jump to Assembly because that was the only way to achieve what we really wanted to (games, mostly). Once you're at that level, it's an entirely different mindset. Those of us that also had an electronics background go a step further because we even go below the Assembly level sometimes (and that wasn't all that uncommon back then... of course, the electronics were considerably simpler and easier to understand than they are now).

    That's a VERY different evolution than the kid that STARTS with Java or JavaScript or whatever now, then goes to school and learns more high-level stuff. And it shows in daily work life all the time! I see people constantly in my career who aren't really bad developers, but they are, somehow, lacking... it usually shows when things aren't working as expected. They have a difficult time breaking things down and figuring out what's going on. Oh, they can Google an answer as well as anyone, and hey, probably 9 times out of 10 that's sufficient. But they're just stumped beyond belief that one time... they just can't get into the details and work the problem at a fundamental level. They don't REALLY understand how these machines, these operating systems, work. And that's a really bad state of affairs.

    (to be fair, some of us that learned in the "ground-up" way sometimes have difficulty STAYING at a high level... we sometimes trip over discussions that are too abstract because our brains are searching for the details that aren't there, and really aren't even relevant... that's a whole other discussion, but it's a true phenomenon).

    All of this... to try and pull it back to topic relevance... means that relatively simple things like designing your code to minimize object allocation and deallocation seems mysterious to a lot of modern developers... they don't always get why it's important, and it seems like some black art or something even when they do... to us old-schoolers, I guess that's what we are now, it's actually quite natural to think that way. Even in JavaScript, where I've done considerable work, and highly complex work, GC has never presented a big issue for me, primarily because I've ALWAYS thought about it and know how to avoid it at the right times. The language itself isn't flawed, modern developers' ability to use it effectively is.

    We're proba

    --
    If a pion (n-) collides with a proton in the woods & noone is there to hear it, does lamdba decay into the source pa
    1. Re:It's more about developers than technology by Anonymous Coward · · Score: 0

      A "programmer" is not the same as some other settings "programmer". And certainly a "software engineer" is not the same as a "programmer". If you have a proper education in Computer Science and you get sufficient time from your employer, you are certainly capable of devising highly efficient memory layout techniques and strategies.

      In my opinion, many people are in "IT" because of the money. They are essentially "programmer whores" and take every word from the moneymen (the Johns) as the Holy Word. So if moneyman (aka as "customer", "business person", "manager") say "focus solely on the business problem" they will consider this mindset as the "proper" one. But to tell you a little secret: money is the worst enemy of rational decisionmaking.

  33. Hundreds of iframes make a page unresponsive by tepples · · Score: 1

    Yes, <iframe> was proposed as an alternative to AJAX. But years ago, hundreds of iframes on a page would cause certain browsers to crash. And even in 2013, the test case from that bug still causes Chrome to show an unresponsive tab alert on my laptop. Besides, putting each comment in its own iframe doesn't support batching. Unlike JavaScript, which can request multiple comments as a single JSON or XML object, each iframe needs its own HTTP request.

  34. Article illustrates two major problems with iOS... by Anonymous Coward · · Score: 0

    1) Benchmarks are useless for a device OS that only allow one browser rendering engine. It prevents apples-to-apples comparisons of rendering engines on the same hardware, so there's less incentive for them to improve their browser.

    2) Any application for iOS that uses PhoneGap or a similar Web-based application framework is basically being shot in the kneecaps by Apple applications policy. Apps can't use Nitro, and they can't use other JavaScript engines with JIT compilation. It wouldn't surprise me if Firefox OS apps can run circles around nearly identical iOS apps made with PhoneGap on comparable hardware.

  35. Re:TLDR version of TLDR version by Pascal+Sartoretti · · Score: 1

    GC is memory-hungry, but memory is scarce on mobiles => forget about GC.

  36. Wrong (malware in adbanners)... apk by Anonymous Coward · · Score: 0

    "He said (and I agree) that the problem is NOT ads." - by Arker (91948) on Monday July 15, 2013 @11:09AM (#44284689) Homepage

    Malware More Likely to Come From Legitimate Sites:

    http://techtalk.pcpitstop.com/2013/06/26/malware-more-likely-to-come-from-legitimate-sites/?know-notenough=

    and

    More dangerous to click on an online advertisement than an adult content site these days, Cisco said:

    http://www.securityweek.com/easier-get-infected-malware-good-sites-shady-sites-cisco-says

    APK

    P.S.=> You need to be better informed - take a read up in those 2 links above, in order to be... apk

    1. Re:Wrong (malware in adbanners)... apk by Arker · · Score: 1

      You need to read a little better. Although I congratulate you on posting good links and formatting your message readably, you sadly missed the point. Those are not text ads, and text ads arent how drive-bys work. The 'annoying javascript contraptions' I was talking about - THAT is how the drivebys work.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    2. Re:Wrong (malware in adbanners)... apk by Anonymous Coward · · Score: 0

      The worst work using fastflux & dynamic dns nature-flaws. I read just fine. You said the problem is not ads. I showed you ads being loaded with malware problems from reputable enough sources being a problem. A security problem no less.

      APK

      P.S.=> The second adbanners turned that up? This came out pretty much vs. that (& I held off until I saw that, kept it to myself - well, not anymore):

      http://start64.com/index.php?option=com_content&view=article&id=5851:apk-hosts-file-engine-64bit-version&catid=26:64bit-security-software&Itemid=74

      + it gains you not only better "layered-security"/"defense-in-depth" vs. botnets/maliciously scripted sites/servers + malware served from them etc. that's known & current, but also more speed via banner blocking & locally cached hardcoded favorites site @ the top of its result file, along with reliability vs. downed or redirect poisoned dns servers (+ those flaws above), & even 'anonymity' to an extent... apk

    3. Re:Wrong (malware in adbanners)... apk by Arker · · Score: 1

      I said the problem is not ads and I will repeat it. The problem is not ads. The problem is the way that ads are typically being delivered, and it's not exclusive to the ads. Other things delivered in the same manner are subject to the same problems, and it's perfectly possible to do advertising in other ways.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
  37. Owner-operator or slave by yusing · · Score: 1

    "How much memory is available on iOS? It’s hard to say exactly."

    Exactly. Because it's an appliance. And you're either willing to take it apart and learn how it works so you can make it do what's needed, or you accept that you're an appliance operator and stop bitching about it.

    --

    "You must try to forget all you have learned. You must begin to dream." -- Sherwood Anderson

  38. Not just malware in adbanners (bandwidth eaters) by Anonymous Coward · · Score: 0

    Well, the proof's in the pudding on malware in ad banners online AND in speed/bandwidth they consume on users too (that they pay for out-of-pocket).

    * You don't have to repeat it - you have to face up to it: I merely posted undeniable, verifiable facts in that regard earlier!

    (That adbanners have been shown by reputable sources as housing malware AND on regular sites (not just "Pr0n" sites etc./et al)).

    APK

    P.S.=> So this is yet another consideration to take on adbanners NOT doing users a favor in adbanners being speed/bandwidth hogs taking away what users pay for out-of-pocket that adbanners consume(ontop of them housing malware/malscripting)... apk

  39. View Source Fail by Pherdnut · · Score: 1

    I'm sorry but when his relatively simple content-page loaded like it did I looked at his HTML. Drew Crawford isn't anal enough to be taken seriously on performance and he's using something that spits some 40 odd script tags on the page for one purpose that puts some teeth in my straw man.