Slashdot Mirror


Draft Review of Java 7 "Measures and Units"

Jean-Marie Dautelle writes to inform us that the public review period ends on July 8 for JSR-275, "Measures and Units" Early Draft. The JSR-275 will be a major enhancement for Java 7 by providing "strong" typing (through class parameterization) and easy internationalization of Java programs, preventing conversion errors. The latest version 0.8 is available as a PDF. The reference implementation is provided by the JScience project under a BSD license."

45 of 220 comments (clear)

  1. Re:Java 8 by EWIPlayer · · Score: 5, Funny

    Take it from me, I work in HR at a Fortune 500 company, so I know a thing or two.

    This AC is totally right. Every time I need a decision on which language I should use to implement a product, I always go straight to HR; preferably HR in fortune 500 company. Those folks really know their stuff!

    As if what companies use has anything whatsoever to do with this paper... I agree Java sucks, but this has nothing to do with whether or not someone is "employable" after reading this paper - it has to do with a fairly smart group of folks trying to make Java a bit better for numerical work. (i.e. for the public sector, more often than not)

    --
    This sig used to be really funny...
  2. Similar to Fortress by Coryoth · · Score: 4, Interesting

    This looks rather similar to the units and dimensions handling and checking available in Fortress, Sun's effort to build a new numerical/scientific computing language. In general it seems like a sensible idea -- having the option of adding extra annotation that allows for more exacting static checking and greater assurance is generally always a good thing. The only downside is that, at least in the java implementation, it is a little cumbersome and clumsy (though maybe that's just par for the course for new java versions). Now if only java could get statically checkable optional contracts as in Spec# we might actually be getting somewhere. At the very least it would be nice if they had runtime checkable contracts, properties and tests as in Fortress. Or perhaps I should just wait for Fortress to finally mature; it seems that will happen faster than java getting the features I'm after.

  3. getting tired of Java ... by boxlight · · Score: 5, Interesting

    I've spent most of the last 10 years building desktop and web applications with Java: AWT, Swing, JSP, Struts, J2EE, EJBs, and on and on.

    Through all those years I've had to fight perceptions of Java being hard to distribute, slow, difficult, insecure, and over-engineered. I've done pretty well in the battle, and produced some pretty nice products.

    Maybe I'm having a bit of a mid-life crisis, and I'm wondering where to go from here. I'm looking at alternatives for development: AJAX, Ruby, PHP, and Adobe AIR. But nothing out there (outside of the Microsoft world) does everything that Java does as well -- but Java just doesn't do GUI too well. Although GWT is pretty cool. And I've always thought Applets were underrated and under-utilized.

    The point of this rant? Java 7 doesn't excite me in the least. Me and everyone I know are firmly planted in Java 5 (or is it 1.5? I always forget) and we don't appear to be moving to Java 6 (1.6?) -- so why should we care about Java 7 (1.7?).

    Anyway, that's my rant. Any suggestions are greatly appreciated!

    1. Re:getting tired of Java ... by alyawn · · Score: 5, Interesting

      I agree about the features of Java 6 & 7. I code to Java 5 but run in the latest and greatest VM because they continue to make performance enhancements there.

      As for GUI development, I believe that we will see some progress made there. Right now, there is some good competition going on between Swing, SWT, and other toolkits. And now, QT just came out with QT Jambi which looks really cool. The bottom line is that eventually, one of these toolkits will emerge and become the defacto toolkit. Remember, cross platform UI is a hard problem to solve. They'll figure it our eventually. Or, you may get tired enough and write one yourself :)

    2. Re:getting tired of Java ... by cmburns69 · · Score: 5, Insightful

      Version 1.7 will come out, and then you'll start moving to 1.6. When 1.8 comes out, then you can switch to 1.7. It seems like very few people actually use the most recent version. I suspect this is because new methods need to be researched, and community support for new features must be developed.

      --
      Online Starcraft RPG? At
      Dietary fiber is like asynchronous IO-- Non-blocking!
    3. Re:getting tired of Java ... by wawannem · · Score: 2, Informative

      Struts 1.x == old and busted, Struts 2.x == gaining ground rather quickly. It is worth checking out if you haven't done so. It has AJAX support built-in, the configuration is a heck of a lot easier than before and there is a plug-in interface to help roll-out new functionality or integration with other libraries (Spring, SiteMesh, GWT, and a bunch more already).

      You are definitely right that there are too many frameworks :).

    4. Re:getting tired of Java ... by iabervon · · Score: 3, Informative

      Java 6 and Java 7 are relatively minor changes. As far as I can tell, the issue is that Sun can't deal with having more than one number in versions. When they revised the Java language, they didn't change the 1 to a 2; they added an extra 2 elsewhere in the name. Then when they wanted to do it again, they didn't know what to change, so they initially left everything the same, and then they discarded all of the stuck numbers. This means that they don't have a way to show the difference between adding a few library features and changing big important things. The difference between 5, 6, and 7 is much like the difference between 1.4.0, 1.4.1, and 1.4.2, and it's not worth upgrading unless you happen to care particularly about a new feature.

    5. Re:getting tired of Java ... by tcopeland · · Score: 4, Informative

      > Java 6 and Java 7 are relatively minor changes.

      Language-wise Java 1.6 doesn't include any changes; check out the docs for the -source option for javac.

    6. Re:getting tired of Java ... by onash · · Score: 5, Informative

      The JSR that I'm excited about;
      - JSR 294 Improved Modularity Support (superpackages); so we can define the API that is public for a library, so the user doesn't have to see all the public functions.
      - JSR 296 Swing Application Framework; which helps us build better Swing GUIs faster in a more standard way.
      - JSR 295 Beans Binding and JSR 303 Beans Validation
      I was really excited about that Consumer JRE / Java Kernel, which was suppose to minimize the size of the JRE so you could bundle a 5mb JRE for a normal Swing Application, but they decided on pushing that to Java 6! so it's arriving as a patch late this year. It will probably include a very nice looking look&feel as well as GUI drawing optimizations using DirectX on Windows.. pretty cool.

      We can also hope for Closures, which would make our GUI code a lot neater.. My company and everyone that I know (except Apple) have moved to Java 6 - and the IDEs such as Eclipse and new technologies like Open-Terracotta are making me love Java! Especially cause we are developing applications / algorithms that run on many different platform.. Java is really the only way cause its fast enough and rock solid.

    7. Re:getting tired of Java ... by 3m_w018 · · Score: 2, Informative

      Well, Eclipse is a major step in the right direction, despite its shortcomings (the structure of the SWT library and its limitations in comparision w/ Swing, its bulk, etc.).

      When you program Eclipse RCP applications, you don't just spend less time fudging around w/ GUI widgets and more time plugging in large chunks of functionality provided to you (for free) in the framework. Tasks that would have taken me months alone have been shortened up to a matter of weeks...

    8. Re:getting tired of Java ... by fishbowl · · Score: 2, Insightful

      "I wound up choosing Struts 2 just because it seemed the most flexible, being able to incorporate other frameworks within it."

      I didn't mean to sound hostile to Struts; I use it also. I find that some projects are made more complex, unnecessarily complex, as a consequence of the complexity of tools that are used. I regard java frameworks as just another class of tool It occurs to me that great swaths of the common framework capabilities go unused in a given project. I strive for simplicity, introducing a library or a protocol or a container-provided service as needed.

      I find the need for anything beyond implementations of JPA, JMS, JSF, a limited number of implementations from various well-known Jakarta projects, are rather rarely needed and no big deal to introduce when they are.

      I also find that when you start out with a big framework (JBoss SEAM comes to mind at the moment), right from the beginning you risk running into a situation where you are provided with an implementation of some fundamental service, are painted into the corner of that specific implementation and version, and *because* of the fact that it's part of the framework, you can't easily swap in another implementation of that service.

      I can understand a different point of view on this -- disdain for what is a moving target on the fringe of an emerging technology. If you want to go THERE, I would open by suggesting that it may be too soon to start using Java in a real project :-)

      I will now resist making a car analogy and get back to work.

      --
      -fb Everything not expressly forbidden is now mandatory.
    9. Re:getting tired of Java ... by LarsWestergren · · Score: 2, Insightful

      Java 6 and Java 7 are relatively minor changes.

      What!? Java 6 I'll give you was not as big a change as Java 5, but Java 6 was mainly a stability, manageability and performance oriented release, but even that came with some pretty big changes - support for scripting languages with the Rhino JavaScript engine included for instance. Also, the Consumer JRE changes will be backported to it, with the Kernel JVM, the Quickstarter and Direct3D/DirectX pipeline improvements in Windows to catch up with the OpenGL pipeline.

      Java 7 might be one of the biggest changes to the Java language and platform ever, take a look at this list for instance. Note that not all of these might be included in Java 7, or indeed ever. Danny Coward who I believe is in charge of the Java 7 release together with Mark Reinhold talks a bit about the difficult balance between giving people the new features they want and keeping it simple.

      --

      Being bitter is drinking poison and hoping someone else will die

  4. Re:Java 8 by teknopurge · · Score: 3, Informative

    Take it from me, I work in HR at a Fortune 500 company Rule #1 - Do not talk about fight club
    Rule #2 - When making a point, do not discredit yourself
  5. Re:More Java growth? by FlashBuster3000 · · Score: 3, Interesting

    your java-results probably also contain "Javascript" (think of jobs for web 2.0, ajax, etc.).

    Not to mention the tremendous amount of jobs for java-coffee-machine-engineers!

  6. Re:Java 8 by TheRaven64 · · Score: 2, Interesting

    It sounds like this stuff comes from Sun's work on Fortress, which is a language designed to replace FORTRAN in scientific computing (and HPC). The nice thing about having units in the language is that you can use the compiler's type checking way beyond its normal boundaries. You can do this already with classes, but it's messy. You could have a distance and a time class, for example, and constructors that would take scalars and units and create them, then a speed class that would construct a speed from a distance and a time, but it would be a lot of code and very hard to read, so most people just use integers (or floats) and rely on their brains to catch conversion errors. If you add some syntactic sugar then you make it much more attractive, and reduce the errors in the program.

    --
    I am TheRaven on Soylent News
  7. Neat idea by mritunjai · · Score: 4, Informative

    Its a one of the several neat ideas being lifted from the Fortress language.

    For the unitiated, Guy Steele (of Scheme fame) is building a new language for scientific computing called Fortress. It has some nice ideas that really should have been there by now. The language would have saved countless headaches in not just scientific but probably all mainstream software development projects.

    Of course, its just one of the pet projects in SUN Labs ;)

    --
    - mritunjai
  8. Re:getting tired of Java = Python! by Sciros · · Score: 4, Funny

    Well at least it's 2 whole cents. Too many people say stuff like "just wanted to add my .02 cents" which IMO deals a severe blow to their credibility.

    --
    I like basketball!!1!
  9. Re:Java 8 by xero314 · · Score: 4, Informative

    I work in HR at a Fortune 500 company Translation: "I have no idea what I am talking about"

    Lets see what jobs are actually out there:
    • Dice
      • C#: 7303 (or 5054 if you take out all the incorrect matches on C)
      • Java: 16803
    • Monster (last 10 days since it limits to 5k)
      • C#: 1911
      • Java: 3760
    That is without comparing salaries which are on average higher for Java developers.

    Just goes to show how out of touch HR really is.
  10. Re:More Java growth? by xero314 · · Score: 2, Informative

    your java-results probably also contain "Javascript" (think of jobs for web 2.0, ajax, etc.). Dice has 2098 listings in java results that happen to match javascript, very few of which are exclusively javascript without java. which still leaves approximately 14k java jobs vs the fact that the C# search also turns up C jobs, which lowers C# down to barely 5k.

    Not to mention the tremendous amount of jobs for java-coffee-machine-engineers! On Monster maybe, but not on Dice.
  11. Re:More Java growth? by CastrTroy · · Score: 2, Insightful

    However, this just shows how many employers are looking for people to fill positions. It doesn't really state how may positions are currently filled. Maybe there's just less people that actually know how to program well in Java. Maybe a lot of the of the people who know Java aren't doing Java, but are doing something else. Existence of job postings doesn't prove that one technology is better or more popular than another, just that they are having more trouble finding people to fill the available positions. Maybe Java really is more popular, but I've seen a lot more shops using .Net than Java. Of course, I could be wrong, but I don't think just looking up the number of job postings paints an accurate picture.

    --

    Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
  12. Re:More Java growth? by jgrahn · · Score: 5, Funny

    Looks like the death-blow for c#?

    Yes. A couple of classes for handling metres, kilograms and seconds is the killer application for Java. All other languages/operating environments will disappear overnight.

  13. Re:i like this a lot by AKAImBatman · · Score: 4, Informative

    seriously, how come this is the first that i've heard of this kind of idea?

    You want the honest answer or the sugarcoated one?

    Sugar: JScience is getting attention now because Sun is standardizing it through the JCP.

    Honest: Because you've been living in Microsoft la-la land? JScience has been around in the form of the J.A.D.E. library for at least 5 or 6 years; probably longer. Jean-Marie has worked diligently over the years to make sure that Java has had top-notch support for scientific programming. The fact that he's getting recognition by the JCP members is nothing short of splendid. He deserves every bit of it. :)
  14. Re:Ugh... by Coryoth · · Score: 4, Insightful

    Really? No kidding? It's called a requirement. So we are adding functionality to give poor developers yet another crutch to lean on, catering to the stupid? No, it would be adding a mechanism that allows requirements to be documented properly in the code itself, rather than on paper in a binder buried behind the filing cabinet in a document that is now hopelessly out of date and doesn't reflect the code at all anymore.

    Perhaps you are a perfect programmer who never makes mistakes. Some of us, despite our best efforts, do make mistakes occasionally; perhaps we simply weren't thinking about how this code would interact with someone elses code at the time; perhaps we just made a typo; perhaps we hadn't quite had our coffee yet; who knows, but mistakes happen to everyone (except, apparently, yourself). In the case that mistakes creep in, it is nice to be able to catch and fix them as early as possible, rather than having a complex and expensive bug hunt somewhere down the line. Spending a moment to actually document requirements and intentions in a form that can be checked (be it statically, or automatically at runtime if you leave checks on) efficiently and regularly is a good thing. Most of us do that already in the form of static types which are checked at compile time. Adding some expressivity to that (via a more powerful type system, contract annotations on methods and objects, an automated unit testing system, or just extra static checks on units) isn't a bad thing, especially if it is optional (as it often is).

    I can have some sympathy for the complaint that adding bits and pieces in this rather piecemeal (and in the case of this particular implementation, somewhat clumsy and verbose) fashion is poor. Ideally adding means to decently document and express requirements and intentions should be something added to the language as a whole, with an overriding vision of how it should work. For that see Eiffel, Spec#, Fortress, or languages with more expressive type systems like the ML family and Haskell. Still, with something as simple and encapsulable as dimension and unit checking, why not just throw it in as a convenient optional extra? If you don't like it, don't import the library that implements it.
  15. Re:Java 8 by Mr.+Bad+Example · · Score: 5, Funny

    > Take it from me, I work in HR at a Fortune 500 company, so I know a thing or two.

    HR? I'd be surprised if you know what color database has the most RAM.

  16. Re:More Java growth? by iDaZe · · Score: 3, Funny

    Your statistics are almost as good as mine:

    Java sucks
    .NET more popular

  17. Re:More Java growth? by fm6 · · Score: 5, Interesting

    A little detail: "Java" is both a platform and a language. C# is just a language, one of several that runs on the .NET platform. (Microsoft doesn't like the word "platform", but it's the only one that fits.) So when you're analyzing market share, you need to compare Java with .NET, not with C#.

    The figures you quote show .NET doing pretty good, though still lagging way behind Java. One little improvement in the Java language is not going to spell the "death nell" for the .NET platform. That would be true even if .NET didn't have the backing of the biggest software company on the planet.

    What is bad news for .NET is the fact that Sun seems to be capturing a lot of developer mind share with its Java Community Process, which is where this proposal comes from, along with a lot of other good stuff, including JSR 166, which originated outside Sun, and has successfully added a major improvement in concurrency to the Java platform.

    The JCP won't spell the "death knell" to C# or .NET either, not as long as they have MS's backing — and are essential tools on Windows. But it will certainly help Java hold onto its lead.

  18. Code sample by suv4x4 · · Score: 3, Funny

    inches i = 10;
    kilograms j = 40;
    dollars k = 70;

    print(i+j+k); // 1.453^10 volts

    1. Re:Code sample by vigmeister · · Score: 2, Funny

      inches i = 10;
      kilograms j = 40;
      dollars k = 70;

      print(i+j+k); // 1.453^10 volts That's because time is money and e = mc^2

      Cheers!
      --
      Atheist: Buddhist in a Prius
  19. Re:More Java growth? by mhall119 · · Score: 2, Insightful

    Maybe Java really is more popular, but I've seen a lot more shops using .Net than Java. It may be that .Net has more shops than Java (I don't know), but Java likely has bigger shops which account for more positions within a single shop. After all, you don't run .Net on Sparc, Alpha or Power architectures. With sales reps from Sun, IBM, HP, Bea and Oracle all pushing Java stacks, it shouldn't be surprising that there is more demand for Java developers than for .Net developers.
    --
    http://www.mhall119.com
  20. Philosophy of numbers by michaelmalak · · Score: 4, Interesting
    It's interesting that I was trying to do the same thing with C++ back in 2000, maybe even 1996.

    The idea is based on the philosophy that numbers do not exist in isolation. It is possible to speak of, e.g., the number 5 as an abstract entity unto its own, but that should be rare. Most of the time, "5" refers to the ratio "5:1", where the "1" refers to something tangible. In science, the "1" is denoted with units. The problem is, starting with tabulating machines, then onto electronic calculators, and even multi-gigabyte computers, numbers are almost universally represented (erroneously) as the former -- purely abstract numbers. The units are stripped off.

    As any struggling physics or chemistry student knows, one can fake one's way through a test by doing "dimensional analysis" on test questions. If the units cancel out properly and agree, you've probably got the right answer.

    Compilers should be doing dimensional analysis at compile-time. I had originally hoped to create C++ templates -- which are evaluated at compile-time -- to do this, but I couldn't quite see how to get them to handle all the possible permutations of unit combinations and conversions -- at least not easily. It really needs to be built into the language.

    With a compiler enforcing dimensional analysis, it would force programmers to think through every formula and calculation. Novel unit combinations would arise as a result of creating database reports. E.g. a payroll report might have $/2-week pay period. A conversion somewhere to $/year would be another unit, and the conversion between $/2-week pay period and $/year would be clearly definied in one place rather than sprinkled throughout the code.

    Putting conversions in one place is the first thing I did when I cleaned up some pre-existing source code that I took over. I explicitly created three coordinate systems (device, world, and screen) and created two two-way conversions to go between the levels. Before that, there were conversions all over the place, each a little different, each with different handling of roundoffs and some even with hidden fudge factors. ("Conversions in one place" can be done without developing a units system, as it has its own benefits.)

    I blame a lack of education on the philosophy of numbers for programming languages relying upon naked numbers for so many decades. Rote algorithms for addition, subtraction, multiplication, and division taught in elementary school are the foundation of this vacuous philosophy.

    It could even be responsible for the public's acceptance of no gold standard for the dollar. They're not demanding to know what the reference point of "one dollar" is.

    And of course it's the Federal Reserve that can print endless money for the war in Iraq, thank to the lack of a gold standard.

    So there you have it -- lack of units in programming languages and the war in Iraq have a common cause: the lack of correct philosophy on numbers taught in schools.

    1. Re:Philosophy of numbers by ispeters · · Score: 4, Insightful

      It could even be responsible for the public's acceptance of no gold standard for the dollar. They're not demanding to know what the reference point of "one dollar" is.

      And of course it's the Federal Reserve that can print endless money for the war in Iraq, thank to the lack of a gold standard.

      I was agreeing with you completely until you said that. There can be no reference point for "one dollar". A currency system lifts the burden of a barter system from its users. Without the dollar, you'd have to bake bread and swap it for internet connectivity, or something. How much bandwidth can you get for a loaf of bread? The same question applies to the dollar. Currency is a tangible way to represent the virtual concept of value. There is no unitary value of value so there can be no fixed unitary value for a currency. A free-floating currency values itself according to what its users think it's worth, which is, IMHO, the only sane way to value a virtual concept.

      Ian

    2. Re:Philosophy of numbers by gatesvp · · Score: 2, Insightful

      It could even be responsible for the public's acceptance of no gold standard for the dollar. They're not demanding to know what the reference point of "one dollar" is.

      I'll do you one further, as we get further and further from solidity with numbers we will get progressively worse at handling it. As we deal with less and less cash, the money we have simply has less weight. We've all seen this phenomenon, anyone who does everything with cash will typically be better at handling their money, b/c they're "handling" their money. Some "get out debt" programs actually suggest the use of cash, even over debit (which is ubiquitous here in Canada). It seems that physical cash has a psychological effect on us.

      Pretty much all of our banking is now done in vaporous "numbers on a ledger", which does not lend itself to providing us with "Mass" about what the numbers mean. We have to convert this to time just to get an idea. I mean, what's $10,000? Nothing unless you think of it as two months of your time (or maybe a full year's worth of "disposable" income).

      I would dare say that the lack of a "gold standard" runs just as deep (or maybe deeper still). Personally, I would love it if we froze the money supply and only added money based on birth rates. So if each Canadian had X dollars associated with them and the population increased by Y, then each year we could print XY dollars and basically kill inflation. Of course, the guys with the money (gov and banks) would not appreciate that b/c they benefit from the public buying into the illusion that today's 50k is worth more than 1980's 20k (it's not). Again with just numbers and no mass associated they can distract people.

    3. Re:Philosophy of numbers by WalterBright · · Score: 2, Informative

      It's pretty easy to do Units/Dimensional Analysis in the D programming language:

      physical.d

      The example is by Oskar Linde.

    4. Re:Philosophy of numbers by Vellmont · · Score: 2, Informative


      They're not demanding to know what the reference point of "one dollar" is.

      I'm no economist, but this statement confuses me. You're really saying that it was somehow better when someone could say "one dollar equals .1 ounces of gold! (or whatever it was). I'm confused. What's the reference point of what .1 ounces of gold equals... one dollar? Why is referencing the value of a dollar to the value of gold somehow "better"? There's nothing magic about gold.. it's just rare.

      Money is meaningless outside of the context of exchanging it for stuff you want. As long as a dollar can be exchanged for things people want, it has value. The minute it doesn't, it's worthless. That's the only reference point that matters. $1 = x% of stuff I want.

      --
      AccountKiller
  21. Re:Ugh... by Coryoth · · Score: 3, Insightful

    Automatic checks only go so far, and if it's optional then it's even worse -- failure through ommission.
    Relying on the things you list alone will result in abject failure, not only in the system itself but the philosophy of the developers -- "I did xyz, I'm safe, there will be no errors." There's only so much you can do within the base language itself before you start catering to the stupid and putting the system in a nice, safe, less-useful box. Are you then implying that we should remove the ability for checks because lazy and poor programmers will abuse them? You seem to be suggesting that if we provide any checking then developers will "use it as a crutch" and not write good code. At that rate why bother with type checking, since that's just an extra crutch that makes developers lazy and expect that things will work. While we're at it why not remove syntax checking altogether; surely giving developers hints about syntax errors just makes them lazy instead of carefully inspecting everything they write. Let's just have the compiler take a best run at compiling the code, and if there is any syntax it can't parse it can just fail silently and let the developer work out where it is. Just because some people are stupid enough to think that auotmated checking makes their code error free doesn't mean it isn't good to provide automated checking for the rest of us for whom it is useful. There will always be idiots, and you won't magically make them better programmers by failing to catch obvious mistakes.
  22. Re:More Java growth? by Shados · · Score: 4, Insightful

    One issue with .NET that slowed down its growth, was poor support for enterprise projects. That is, .NET was quite the ideal platform for mid size project, but when you start needing reliable services (by reliable, I mean queueing, availability contracts, etc), distributed transactions for things other than DBs, handling encapsulated business processes, etc, it was way, -way- behind Java.

    Now with .NET 3.0, it caught up, and with .NET 3.5 its quite impressive: however, 3.5 isn't officially out, and 3.0 doesn't have Visual Studio support, and for the most part in the .NET world, if its not in Visual Studio, it doesn't exists. Once VS2008 comes out (at the end of this year), things should spice up a bit...

    MS' presence on codeplex is also helping the community side a bit, especially with Patterns & Practices (which a lot of things done by that team, altered by the community, eventually makes it in the real things, like Project Acropolis).

    Thats mostly speculation mind you, but it should be interesting...

  23. Re:More Java growth? by fm6 · · Score: 4, Interesting

    In other words, Microsoft screwed up all its early planning for .NET. That's only just, since Sun did exactly the same thing with Java: lousy compilers and virtual machines; too much emphasis on web applications and "network computer" technology. Most of the negative things people think they know about Java comes from that era.

  24. Perhaps JavaFX by centinall · · Score: 3, Interesting

    Although still in it's infancy, JavaFX kinda sounds interesting. I've played around with it a little bit, and it's definitely fun. There are several examples out there showing you how it's done and they get the point across pretty well. It's supposed to be an alternative to Flash and Silverlight and although showing promise, it definitely falls short in it's multimedia capabilities(sound and video). Multimedia would perhaps be the killer feature to add to Java 7. Anyway, they're supposedly optimizing Java 7 to handle JavaFX and JavaFX Script and this is perhaps one of the features that "might" encourage people to upgrade.

    https://openjfx.dev.java.net/

    Btw, JavaFX was previously known as F3 (Form Follows Function?) for those that may be looking up more details and examples of it.

  25. I don't know... by Zarf · · Score: 2, Interesting

    ...what the programming language of the future will look like but I know it will be called "Java"!!!

    Case in point: As if EJB3 has anything to do with EJB2 other than sharing the same name.

    --
    [signature]
  26. We've been using this for the last few months by Sanity · · Score: 3, Interesting

    We have been using the JScience package to record a variety of internal data about a (we hope!) large scale statistics intensive website we've been building. It is actually a breath of fresh air not to have to worry about accidentally confusing impressions per minute with unique visitors per hour, but rather letting the compiler do the worrying for you. This will be a great addition to Java, but you don't need to wait, JScience's implementation is robust and we've been using it in production for months.

  27. And while your at it by ClosedSource · · Score: 4, Funny

    Please answer the same question for C#.

  28. Re:More Java growth? by Javagator · · Score: 2, Insightful

    I have used both C# and Java in my work, also. My experience is a little different. The two languages are very similar, both the languages and the class libraries. Java is best for portable applications, C# is best if you are on Windows only, and need to access underlying parts of the O/S, such as getting the icons for a specific file type.

    If I needed a C# programmer, and came across a first rate Java programmer, I would not hesitate to hire him/her for the C# job (and vice versa).

  29. What gold standard? by lennier · · Score: 2, Interesting

    "It could even be responsible for the public's acceptance of no gold standard for the dollar. They're not demanding to know what the reference point of "one dollar" is."

    I really don't understand this obsession with the Gold Standard. A gram of gold has no intrinsic value either, any more than one US dollar does. (Other than for making connectors on circuit boards). Its value, like the dollar, lies purely in what other people are willing to exchange for it - and like a paper currency, that 'value' can fluctuate wildly. Gold is simply a fiat currency on a global scale, and its arbitrarily assigned market value bears no relation to any true wealth. The same for every single other investment or speculation commodity, be it diamonds, yen, shares, futures, tulips or bets on horses down at the local track. If its value derives entirely or mostly from *other people's subjective valuation of it* then it's an illusion, a Ponzi scheme that just hasn't collapsed yet - but drop someone in a desert with the choice between a gold bar and a bottle of water, it will.

    Gold's main value as a currency was because 1) it didn't corrode, 2) it wasn't useful for anything else, and 3) it was produced at a slow but mostly constant rate (but not at a rate usefully matching the actual growth of economies, leading to huge abberations like Spain's inflationary spiral after gaining South America's goldfields, and the gold rushes of the 1800s)

    Basically gold was just a crude mechanical approximation of a cryptographic reputation protocol implemented in ore. Its failings as an estimator of personal and social worth are legendary. We can do a lot, lot better.

    Now: if you pegged a currency to a basket of useful commodities or social indexes: water, food, housing, textiles, domesticated wildlife, access to healthcare - the things that a person or society can actually *use* as primary units of biological energy and production - then you'd have a currency with *real* intrinsic value, and you could start talking about having a philosophy behind your money.

    --
    You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
  30. Re:So, tell us by FreeGamer · · Score: 2, Insightful

    I'll give you the #1 reason Java pwns C#: depth

    It has more applications, more libraries, more documentation - all from years of industry backing, making Java a behemoth when it comes to implementing anything. And Java has Eclipse, C# has Visual Studio. Eclipse is amazing. Visual Studio is, well, it's good but it does not compare to Eclipse in terms of features and extensibility and stability.

    Recently I had to mine information from a Paradox 7 database. I had an existing C# middleware server to adapt to do this. Skip forward a month and it's all done using ODBC to make the connection. (We'll gloss over how the default MS driver only does Paradox 4/5 and not 7, forcing the usage of DataDirect's expensive ODBC driver.) So, go to the client to install it, and it doesn't work - turns out the DB is on a network share which appears local. Ok, so, inexperience on my part for not getting the full topology correct and replicating it in the development environment - not a C# problem itself. Turns out no ODBC driver will connect to a Paradox DB on a share, but a JDBC driver from hxxt will.

    So, C#, can use anything in it right? After days trying to plug a JDBC driver into C# middleware I ditch it and rewrite the part the client needs purely in Java.

    I've done in a few days what took a month using C#. The JDBC driver is lightening quick whereas ODBC was slow as hell and problematic at best. Eclipse is a dream to use compared to VS2005. SharpDevelop is miles off.

    I can rely on Java and the Java world. I just can't say the same for C# and it's world.

  31. Re:So, tell us by ClosedSource · · Score: 2, Interesting

    I don't know what you were trying to accomplish, but if you wanted a GUI element in .NET you could have used a ListView, a DataGrid, or the newer DataGridView.

    BTW the .NET DataSet (which contains DataTables) doesn't just work with databases. You can manually set Rows and Tables or read XML into them.