Slashdot Mirror


User: johannesg

johannesg's activity in the archive.

Stories
0
Comments
2,009
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 2,009

  1. Fix the documentation on You Don't Have To Be Good At Math To Learn To Code · · Score: 3, Insightful

    We have Googling and trial&error because documentation of APIs is universally deficient.

    I just spent two days trying to figure out why my OpenGL 3.2 context would not initialize on Linux. In the end I found it was because I was not using a private colormap. It doesn't make any kind of sense to me, even now, and even knowing what to look for I wasn't able to find any kind of warning in what is laughably called a "manual" (it sure looks like a quick list of function calls without any structure and barely any explanation to me, but YMMV).

    How many times do we have to see this:

    int CreateContext (int, void*)

    "this function creates a context. The first parameter is flags. The second is used to pass additional information."

    and are left wondering:

    - what _is_ a 'context', what do I need one for, and what is its lifetime?
    - what flags can I pass? What do they do, _in detail_?
    - what "additional information" can I pass? Is it mandatory? Is it flag-dependent? What structure should it have?
    - can there be errors? How do I see them? How do I decode them into something human-readable?
    - if I delete the context, will it take any associated items with it, or do I need to free those manually?
    - what sort of thread-safety can I expect?

    The problem is not skill level, although it certainly helps to be equipped with knowledge of other APIs and the right level of paranoia. It is, for a very large part, badly designed and even badlier documented APIs. And it really doesn't matter where it comes from, amateurs or pros, open source or closed, it's all painfully bad. The best you can usually hope for is a list of function calls, but almost never any sense of how it hangs together, good explanations of parameters and return codes, and let's not even start about thread safety...

    As an example of good documentation, I'd like to point out Postgres. These guys really work hard on documentation, and it shines as a result. MSDN, assuming you can find what you were looking for to begin with, is not bad either. And on the other end of the scale we have things like OpenSSL, where I believe lack of documentation is in fact part of their business model. That alone should be reason to avoid it...

  2. Re:BINGO on Check Point Introduces New CPU-Level Threat Prevention · · Score: 1

    Your solutions are not solutions at all. You are basing everything on a combination of trust, and techniques of dubious real-world value. That's fine for a few very specific domains, but in the real world things like "time to market" also matter.

    Whitelisting is bullshit. I should not have to rely on a "trusted" list of applications; I should trust that the OS has containers that stop any damage from being done in the first place. And I don't want to give an application either nothing, or the keys to the kingdom, which is essentially what UAC or sudo ask you to do. Let me choose what it gets on a case by case basis: network access, full screen access, access to specific devices and directories, etc.

    Can you write malicious software in Ada or Java? Of course, and it's trivial. Can a person with a CS degree write bad software? Don't make me laugh, I see it every day. Those are not solutions at all.

    The answer is not trust, it is containers with specific, easily understood access rights.

  3. The final straw on Check Point Introduces New CPU-Level Threat Prevention · · Score: 4, Funny

    The software Checkpoint makes already prevents any kind of useful work from being done on a machine. Now it takes the logical final step, and just completely stops the CPU from doing anything at all! Our IT department will love it for sure. Anything they can do to slow down actual business processes.

    Seriously. We use Checkpoint at work. On a fast machine with an SSD, compiling takes longer than on machines with a normal harddisk...

  4. Re:Doesn't Predate Mohammed on Carbon Dating Shows Koran May Predate Muhammad · · Score: 1

    Well, for one thing, because I'm not in fact under a rock. I'm not saying there aren't any muslims that aren't good, honest, and peaceful, but if they are, it is _despite_ their religion, not because of it. It is because they are, in all but name, apostate - they have left the core tenets of their faith behind and are living, by any non-islamic standard, decent lives. Great, more power to them!

    But there are other muslims who are perfectly happy to do all those bad things I've mentioned and more, in the name of their faith, and they have ample support in the holy texts of islam. All that text is publicly available, you know - we can read it too, and it is really easy to understand where ISIS gets its inspiration when it burns a few prisoners or destroys ancient monuments.

    The discovery of this document is actually a great opportunity for islam. It removes just one single fact - the absolute authority of mohamed. If he was so clearly 'mistaken' about the origin of the texts, maybe he was also making the rest up? Maybe he is in fact not a prophet at all, but an imposter, who took an earlier, gentler islam and transformed it into the warlike monstrosity it is today. If you are a muslim, wouldn't you want to know?

    At least the world is not going to blame the muslims for shaving some of the sharper edges of their religion, I can tell you that.

    Why, by the way, do you assume I'm Christian, and not for example hindu, Jewish, shintoist, Buddhist, or atheist?

  5. Re:C++, hands down on The Most Important Obscure Languages? · · Score: 1

    I agree on the templates, but I thought we were discussing issues that were specific to C++11 (and later). In general, I find that auto, the range-based for loop, lambdas, deleted functions, override, etc. as well as the new additions to STL all vastly improve code quality. Move semantics, once I understood what it was, felt like a hole I never knew was there that was finally filled.

  6. Re:Doesn't Predate Mohammed on Carbon Dating Shows Koran May Predate Muhammad · · Score: 1

    And that's such a shame. There's just so much to love in islam: bombings, beheadings, mutilation, pedophilia, apartheid, racism - if it offends human decency, you can be sure islam promotes it. How dare anyone speak out against it... It's one great strength is its ability to take a diverse group of poor, illiterate, angry people and bring them together under the umbrella of arab superiority, against the west and anyone else unlucky enough to be perceived as an enemy. And it's only through violence and mob rule that islam has managed to gain and retain any ground in the world.

  7. Re:C++, hands down on The Most Important Obscure Languages? · · Score: 1

    Odd. Since C++11 I've used the new features to remove about 15% of my old code base (which is about 300,000 lines), and I find the new code significantly easier to read and maintain. What new feature is giving you trouble?

  8. Re:The consortium needs to finish human languages on Do We Need More Emojis? · · Score: 1

    That guy needs to get off his high horse. White people designed computers. White people designed unicode in an effort to allow non-white people to use computers. White people apparently made an honest mistake when creating the code points for a complex, and to them largely unknown language. And apparently white people must fix it, because I don't see this guy doing anything but bitching about it.

    Oh, and I'm a white person whose family name contains a character that is not in ASCII either, a situation that has pretty much forced my family to adopt a different spelling (using either 'y' or 'ij' instead of Dutch lange-ij, a character I cannot even write here). So much for white superiority, then...

  9. And being a Dutch experiment... on 'Ingenious' Experiment Closes Loopholes In Quantum Theory · · Score: 2

    ...the electrons were moved between labs on a bicycle.

    Ah, the Dutch! Whether it is a dike or a quantum theory, they can plug the holes ;-)

  10. Didn't we already have a compiled weblanguage? on Compiling to JavaScript: TypeScript vs. Haxe · · Score: 1

    How is webasm different from Java?

  11. Re:The Onion had it right on Ebola Vaccine 100% Successful In Guinea Trial · · Score: 1

    Of course, no one in their right mind would even consider the possibility that black people invest in research to stop a disease that is rampant in their own countries... Black people shouldn't have any kind of responsibility for their own lives. They _need_ white people to provide them with food, medicine, etc. And to think otherwise is racist.

    While food and medicine is ok, please keep in mind that white people shouldn't attempt to provide free transportation and jobs. That's also racist.

  12. Remove features as well on How Developers Can Fight Creeping Mediocrity · · Score: 1

    Pruning the tree, so to speak. I regularly identify features that are candidates for pruning:

    - Because they are disruptive in the code base (needing an inordinate amount of developer effort to keep them working in a changing environment, or because they make testing much more difficult, etc.)
    - Because they are disruptive in the user interface (needing a lot of screen space while barely being used)
    - Because they are disruptive in the user manual (if you cannot properly explain it, perhaps because it relies too deeply on internal knowledge, or because the set of conditions that cause the feature to work is just too large)

    Some of these I propose to the customers for removal (I work on a rather specialized industrial application, so the number of customers is not that large). Others I break in a subtle way and wait to see if anybody complains. If they don't, the feature is gone in the next version.

    Writing software is a lot like gardening. You shouldn't let your garden grow wild, it's ugly.

  13. Re:The joys of youth on .NET 4.6 Optimizer Bug Causes Methods To Get Wrong Parameters · · Score: 1

    Agreed.

    My comment on being locked in specifically referred to the long train of Microsoft technologies that arrived, flowered for a short while, and then whithered over the years while I was working on this thing. One of my first choices as a young engineer was to use the win32 API instead of MFC. MFC proved to be a dead-end, so I feel fully justified in choosing what was (officially) the more difficult option. I forget the names of the others... Silverlight is a good example. I feel for anyone who invested in that. And .NET is on the way out, _in my opinion_ (feel free to disagree) - relying on that is a good way to be obsolete a few years from now. But there certainly were others. Who is using COM now, except to interface with specific Microsoft APIs? DCOM? ATL? OLE?

    Modernisation is something I've always done during quiet periods. None of my customers needed (or need, even today) IPv6 support, but since adding it was fairly straightforward I've done so anyway. None of my customers needed unicode when I introduced it either, but we have since added a German customer who certainly appreciates being able to use that German S character. Could they have lived without it? Probably. Could we have built in unicode support while already under high load to tailor the software to their site? I very much doubt it. And consider this: the competition for this bid was a package I also happen to know, that crashes when you feed it any character that has the high bit set, so that was one point in our favor then. IPv6 will eventually make sense, and when some customer convenes a Tiger Team for Emergency Network Migration to IPv6 they will call me in, and I will nod sagely and say "click that checkbox over there, and it uses IPv6 instead."

    My language of choice is C++. I find the hatred that language gets on /. astonishing - it is not only a powerful language that results in very fast programs, but also a well-established standard supported by multiple vendors with multiple compilers. Over the years I've compiled this project with Visual C++ 5, 6, 2008, 2012, 2013, and now 2015 (see me chase those versions!), acc, and uncounted GCC versions. I'd truly hate to be stuck with a single-compiler language.

    We rely on plenty of external packages as well. The underlying database is currently Postgres. Before it used to be Oracle. Our SQL usage is not so arcane that we coulnd't run it on other SQL-compliant databases - a few specialty functions for things like checking database sizes would have to be rewritten, but the bulk of the software would run out of the box.

    We have our own drawing API (about 7 primitives, nothing too fancy). It used to do win32 only. Then it got the ability to do X11 as well. Then we changed it to Cairo. We print using the same API - originally through xprint, and now through Cairo + CUPS. It may sound like a lot of change, but it was all confined to a handful of classes, with the rest of the software never knowing the difference.

    Anyway, just rambling on now ;-)

  14. Re:The joys of youth on .NET 4.6 Optimizer Bug Causes Methods To Get Wrong Parameters · · Score: 4, Insightful

    Your advice means I would be stuck using Visual Studio 5, and GCC 2.8.0. Hope you don't mind me 'chasing versions'...

    I have, however, refrained from chasing every Microsoft fad over the years, meaning I'm now in charge of a modern C++11 application, happily running on Linux and Windows, in 32-bit and 64-bit mode, and with full support for things like unicode and IPv6. Instead of hoping that Microsoft would get off their lazy ass and finally update MFC, or something...

    There was a question here on slashdot on how to plan for 20 year development cycles the other day. I'm almost at that point now, and let me tell you what keeps an application alive:

    - don't get locked in to single-vendor technology that might disappear on a moment's notice.
    - hide API's inside your own classes. That makes ripping them out and replacing them with something else so much easier.
    - stick to standards.
    - invest in regular modernisation. Do it when reasonably can, not when you absolutely must.
    - refactor whatever stinks.
    - keep your own skills up to date. Apply as needed.

    Just my two cents, of course...

  15. Re:In favor of paid copyright protection on There Is No "Next Great Copyright Act", Remain Calm · · Score: 1

    Their lobbying clearly indicates they want indefinite copyright. I'm simply asking them to put their money where their mouth is - and in the process stop bothering the rest of us with ridiculous copyrights on ancient works that have no economic value whatsoever. It is not at all an unreasonable request that the user pays, so to speak - that copyright holders who want protection beyond a reasonable timeframe, also get to pay for enjoying that protection.

    It is precisely those continuous extensions that I want to put an end to. Instead of extending copyright for _every_ work, do it my way: let the copyright holder choose, but also let them pay for the privilege. Mickey Mouse will be under copyright for a long time to come, but works that are no longer economically viable shouldn't simply be locked into a cupboard and forgotten. My proposal sets them free.

  16. In favor of paid copyright protection on There Is No "Next Great Copyright Act", Remain Calm · · Score: 2

    This is how copyright should be changed: give every 'work' ten years of free protection - plenty to understand whether it is making money or not. And beyond that, allow for infinitely repeatable five-year terms, paid for at a progressive rate. That way everyone can be happy: basic protection is in place for free, and anything that is valuable can be protected up to its economic value but not beyond.

    Copyright owners can be happy: they finally have their infinite copyright - or at least as it makes sense economically.
    The public can be happy, as older works will eventually fall into public domain.
    The government can be happy, as copyrighted works become a steady source of income.

    See, everybody is happy!

  17. Parts of AmigaOS of course on Ask Slashdot: If You Could Assemble a "FrankenOS" What Parts Would You Use? · · Score: 1

    Assigns (randomly named identifiers for things in the file system). ARexx (fully integrated, comprehensive scripting support, don't care about the language, throughout the OS and all applications). Screens (the ability to group windows and more importantly tasks together). A design that doesn't require constant disk access and thus remains responsive at all times. I'd also choose any windowing environment that is not X11, and since we're talking Amiga anyway I'll choose Intuition (a sane windowing environment).

    You can sort-of pretend all of these things exist in Windows or GNU/systemd, but in reality they are pale imitations of the original. Screens for example - that works because applications have knowledge of them, and use them intelligently, not because you just happen to be able to assign windows to a workspace manually.

  18. Re:Remember Hypatia on Woman Behind Pakistan's First Hackathon, Sabeen Mahmud, Shot Dead · · Score: 1

    I love how you have to go back 1600 years to find an example of Christians being assholes. Meanwhile, today, _every single day_, islam kills, tortures, maims, and rapes.

    Not good enough for you? Christian faith requires that you love each other; killing is one of the worst imaginable crimes. Islam requires that you hate all who are not muslim; killing others is mandatory according to the quran.

    DON'T pretend that "all religions are equally wrong"; they are not. Most of the world's religions are (relatively) peaceful, and will generally leave non-members in peace (neither Boeddhism nor Christianity requires the death of non-believers, and you cannot even become a Jew or hindu except by birth even if you wanted to). There is one major exception to this rule: islam, the very name means "submission", requires that _everyone_ submits and becomes a muslim. And its followers are not only required to use violence to make it so, they are also more than happy to commit atrocious acts to get their way.

    The greatest weapon against islam is education. A succesful, educated woman who has become a public figure simply cannot be suffered to live; her example threatens the entire power structure of islam. And that, in a nutshell, is why this poor, courageous woman was murdered.

  19. Alternatives? on Microsoft Opens Vulnerability Bounty Program For Spartan Browser · · Score: 3, Interesting

    How much is the Russian maffia or the Chinese government offering? Before we make any decisions on what the best economic choice is we should be aware of all the alternatives...

  20. Re:It's pretty much a given that they saved money on Australian Defence Force Builds $1.7m Linux-Based Flight Simulator · · Score: 1

    Instead of going with a licensed OS like Windows or VxWorks, they saved tens of dollars. Smart thinking and good use of money in these tough economic times.

    It would be nice to see other departments try to realize these types of gains.

    Vxworks is tens of thousands of dollars, not tens of dollars. Second, what exactly is the added value of vxworks in this? It is good if you need hard realtime operations, which typically implies a solution with hardware in the loop. If you don't have that (and a flightsim doesn't need it) you can use a non-realtime OS like Linux just fine.

    Anyway, how is this news? Where I work we have been writing spacecraft simulators for years on Linux... In the past all that stuff used to run on Sun, but really, what's the point in getting a slow, expensive Sun machine if a cheap Dell box loaded with Suse will do the job faster and cheaper?

  21. Re:Back out of Plan Affirmative-Action on Ares Manager Steve Cook Resigns From NASA · · Score: 2

    Really reliable except for a series of Soyuz spacecraft that nearly burned up on reentry, due to the thrust unit not being released properly. They still have no idea what is causing it. See for example: http://www.universetoday.com/2008/04/20/soyuz-crew-safe-after-a-violent-re-entry-and-landing-400km-off-target/

    Any landing you can walk away from is a success, and the crew survived, didn't they? How would a shuttle deal with this sort of punishment, you think?

    If given a choice to travel on either a Soyuz or a shuttle, I'd fly on a Soyuz in a heartbeat. Not that anyone will ever ask me of course...

  22. Re:Lol on US Fed Gov. Says All Music Downloads Are Theft · · Score: 1

    There's an interstate in Washington State that has an exit in DuPont (yes, the city and the company). The state was going to build the exit and charge DuPont for the privilege. DuPont said, 'if we can build it to your specs, can we do it ourselves?' The government said yes and DuPont built it for half the price the state was going to charge them.

    When corporations do something for themselves it is simply to obtain a service, and the work is done as cheaply as possible.

    But when corporations do something for someone else (such as the public), it is a for-profit activity and it will be charged at the usual rates.

    Do not mistake the ability of corporations to do something for cheap, for their willingness to do it cheaply for you. Especially on long-term services, where a corporation gets entrenched and other potential bidders face much higher startup costs if they were to take over the contract.

    As far as health care, there's a lot more to be said about it than just comparing the government's job of doing other things. I don't know what the answer is there. I think that we've lost the 'insurance' aspect of health care. People want their insurance company to pay for everything (why don't we have car insurance cover tuneups?). If people paid for all the little, routine things and had the insurance for catastrophic things (like cancer, or having a limb reattached), then there probably wouldn't be any "crisis". And I think the whole system would probably be in much better health if 64% of American's weren't overweight/obese. Perhaps you shouldn't get insurance if you've caused your own demise through negligence.

    Because everyone is negligent in their own way. You should have looked before crossing the street, you would have seen that car coming. You should not have run 20 miles every day of your life, you knew it would give you bad knees. You should not have visited that hotel, it is well known that large international hotels attract terrorist bombings. It is the ultimate cop-out for insurance companies.

  23. Re:What they mean: on First European Provider To Break Net Neutrality · · Score: 3, Insightful

    There are some major differences between all those shared resources you list, and those of ISP's though:

    1. With ISP's, you pay for different speeds. If you pay for (say) 1000kb/s but it is known in advance that you will only ever receive 333kb/s, that effectively means they have just raised their prices by a factor three.

    2. Rather than giving everyone _at least_ one third of their paid-for speed, and then spreading the remainder evenly over the various customers, you are simply capped. In fact I suspect that even that promised one third of the paid-for speed is on an "if available" basis.

    3. The phrase "abuse" is thrown around lightly, and there is a clear undertone of "illegal". These are probably the kind of people downloading illegal movies and childpr0n all day long! Cap them, before they do even more harm! Or... Maybe they have subscribed to a legal movie download service? One that competes with UPC's own TV offerings? (UPC is actually a cable TV provider, that also does internet on the side!)

    Simple fact: UPC is advertising certain speeds, but not delivering them. And it's not even because of oversubscription (as in the examples you gave), but simply because they don't want to.

  24. Re:The US isn't all first world. on Developing World's Parasites, Diseases Enter US · · Score: 1

    while you are reasonably correct on the causes of the great depression, you fail hard.

    1. is over already

    That doesn't invalidate his point though. It is a list of steps that are taken in order, not a list of conditions that must all be true at the same time.

    2. paying off loans isn't what causes contraction of money supply.

    If taking out a loan increases the money supply (as argued in a great many documentaries), then paying it off decreases it. Go see "money as debt" or something similar.

    3. if you want to single out houses as the only asset, then yes.

    4. yes, there's no getting away from the fact companies have taken a hammering

    5. most places have had a fall in profits, there are some standouts though. gold producers are one of them.

    If you are trying to deny what he's claiming, you are doing a lousy job. And gold producers as standouts... Could that be because investors are no longer willing to invest in coin?

    6. here is your big fail. jobless rate in 1933 was 24.9% http://www.bls.gov/opub/cwc/cm20030124ar03p1.htm

    Indeed, and that may yet save us. Or it could be a difference in counting methods, or it could be that the hammer is yet to fall for many.

    7. here is your biggest problem - doomers like yourself who are still claiming the sky is falling when their are CLEARLY signs of recovery worldwide.

    You mean, "the people who caused the problem in the first place are telling us everything is fine now in the faint hope that we will believe them and start spending like crazy again. But given that they have no credibility left, no one actually believes them, thus perpetuating the downwards spiral."

    Not that that is a bad thing. Restarting the spending spree will just start another bubble, making the problems worse in the long run.

  25. Re:And came the authentication authentication... on Scientists Find Way To Combat Forged DNA · · Score: 1

    It's a bit like this, then? ;-)