« First « Previous Comments 46 - 71 of 71 Search these comments
Scala is promising and popular for big data. Have any of you used the Netbeans IDE? It's pretty easy to use compared to Eclipse. As for coding, it's useful to know for building ones own software not as a career.
.NET and Java aren't kiddy toys. They are the predominant platforms of the Internet, and there are damn good reasons why. I have yet to see anything other than low-level hardware code that can be implemented easily or elegantly in any other language that couldn't be implemented easily or elegantly in .NET or Java. (One caveat: String to enum conversion is better in Java.)
Agreed. Java is just marginally slower. One can easily throw money at machines and save on development/debugging costs.
C++ is too slow for many things. High-frequency trading is one example. You really should be doing FPGA or ASIC with a customized network stack.
Scala is promising and popular for big data. Have any of you used the Netbeans IDE? It's pretty easy to use compared to Eclipse. As for coding, it's useful to know for building ones own software not as a career.
I would stick with IntelliJ.
Have you checked out Kotlin?
http://en.wikipedia.org/wiki/Kotlin_%28programming_language%29
It is not nearly as big as Scala.
Their implementation is entirely different, C# does not erase the runtime generic types and allows for full runtime type introspection while Java is using type erasure for compatibility reasons and thus type-casts at runtime.
Exactly my point. One of damn few differences between C# and Java reflection is type erasure, and that’s utterly insignificant. To call the implementations “totally different†because of type erasure is ridiculous.
I’ve been doing Java programming since 1995 including intensive reflection and there has been only one time when I actually needed the type information included and then it was trivially easy to add that type information by including an instance of java.lang.class. Moreover, this solution was obvious. So I cannot consider the exclusion of type information in the Java class format to be a big deal or a significant difference in the reflection API. You have a simple opt-in mechanism for including type information.
scala
My view on Scala is that it is simply trying to be the next major revision of Java. Personally, I’d prefer if the good parts of Scala were simply rolled into Java 9 or 10. Yeah it would break backwards compatibility, but far less so than having a different platform altogether. That would be far more disruptive than simply stating that Java 10 and up apps have to run on JRE 10 and up. I see no point in having to switch an entire platform rather than rolling a few new features into an established platform even if it means a compatibility break.
Knock knock!
Who's there?
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Java
1995 called and wants its joke back. It's been 15 years since Java performance has sucked. Maybe you should be examining your code rather than what the compiler produces.
Any reasonable language should not have the concept of null. At least it must have null-safety at compile time.
In programming, every small thing is trivial, but the code will look ugly.
My view on Scala is that it is simply trying to be the next major revision of Java.
Doubtful. The philosophy is quite different on many fronts. It even attempts to tackle multiple inheritance! And path-dependent types? :-)
Kotlin probably tries to be a better Java. It is much less ambitious.
I’ve been doing Java programming since 1995 including intensive reflection
I hope you did not have to rely too much on reflection in 1995. Performance used to suck. It is very good now, of course.
Groovy/Grails uses JVM reflection extensively.
1995 called and wants its joke back. It's been 15 years since Java performance has sucked. Maybe you should be examining your code rather than what the compiler produces.
I'm just going by that Conectra VPN software a lot of clueless IT shops make you use. Where your Java updates from time to time and breaks it then you get spend hours with their tech support trying to convince them that their Server software is out of date.
Then after I finally get it working. Yes I still get the Java Fuck you few moments of do nothingness before it starts working. Java sucks BALL!
It always has and always will.
Any reasonable language should not have the concept of null. At least it must have null-safety at compile time.
I've been saying that for years. Microsoft almost did something awesome when they introduced the ? token and the ?? operation. Unfortunately, they had the wrong motivation and didn't take the idea far enough.
Java was a pure object-oriented language to begin with, that is, everything is an object or a primitive, and the primitives (integers, floating points, and such) all had corresponding classes. For ease of use Java later introduced auto-boxing and auto-unboxing so that programmers did not have to explicitly convert between primitives and objects.
Face with the same problem, and the use of structs for data-structures put on the stack (don't even get me started on the stupidity of that whole subject), Microsoft introduced the ? token for making non-nullable things, i.e. primitives and structs, nullable. So you could do something like this...
int? age = null;
if (age.HasValue && age.Value > 10) ...
if (age ?? 0 > 0) ...
What Microsoft should have done is broken backwards compatibility and made everything non-nullable by default requiring the end user to explicitly opt-in for nullable values with the ? token. That would have been a great improvement and worth breaking backwards compatibility for.
Doubtful. The philosophy is quite different on many fronts. It even attempts to tackle multiple inheritance! And path-dependent types? :-)
How so? All Scala adds to multiple inheritance is an ordering of the preferred method calls for conflicting methods. I hardly call that a different philosophy.
In any case, I think we're about to get into a nomenclature argument, so let's not.
I hope you did not have to rely too much on reflection in 1995.
Java didn't have reflection back in 1995. Reflection was introduced in a language called Pizza which was an extension of Java in the same way that C++ is an extension of C. Later both .NET and Java incorporated reflection.
Reflection was incorporated in Java 5 back in 2004.
As for performance, if you ever had bad performance using reflection, it was because of how you were using it. You're not suppose to sit in a loop calling getClass() and getMethod(). You're suppose to reflect once and then use the reflection objects inside your loop or event handler.
Java didn't have reflection back in 1995.
Reflection was in Java 1.1. It was simply refined and improved through the versions.
What Microsoft should have done is broken backwards compatibility and made everything non-nullable by default requiring the end user to explicitly opt-in for nullable values with the ? token. That would have been a great improvement and worth breaking backwards compatibility for.
In F# you have to turn on a flag to allow nulls.
Auto-boxing in Java can be dangerous because of nulls.
Breaking backward compatibility is good for the art but bad for business.
How so? All Scala adds to multiple inheritance is an ordering of the preferred method calls for conflicting methods. I hardly call that a different philosophy.
In any case, I think we're about to get into a nomenclature argument, so let's not.
Java only allows multiple interfaces with no data or methods. Scala allows at least limited multiple inheritance with methods.
But yes, let's not argue over nomenclature. :-)
I don't get the semantics over type safe, and readability.
Either you understand that language syntax and can follow the code or you can't. The worst thing people do is comment and especially over comment, if you can't read the code either you did or inherited. Then you're not worth a shit at what you're doing, or the folks that you inherited the code form aren't worth a crap.
Now of course, my niche is in enterprise development. If I were doing stuff like creating an original game engine, graphics or sound format, or low level hardware development. Then my thoughts on that would all be different. 90% of the enterprise development done is an unnecessary dog and pony show, to keep up the illusion that any real Computer programming is actually going on.
Especially the commenting. If I have to comment a method called, get_customer_monthly_invoices, then somebody is really really worried about their goddamned job security.
Java didn't have reflection back in 1995.
Reflection was in Java 1.1. It was simply refined and improved through the versions.
My mistake. I must have been thinking of generics. Serves me right going on memory at my age.
Yeah, reflection was added in 1.1 in 1997.
My mistake. I must have been thinking of generics. Serves me right going on memory at my age.
No worries. :-)
Breaking backward compatibility is good for the art but bad for business.
Transitioning from Java to Scala would be even more of a challenge for business than transitioning to a version of Java that requires some code changes and a new class format. That's why I'd rather take the best of Scala and put it in Java.
Besides, Java already competes with .NET. Adding another competitor will just fragment the market further making it harder for developers to cooperate. We don't need many platforms, just a few or even one really good one.
Transitioning from Java to Scala would be even more of a challenge for business than transitioning to a version of Java that requires some code changes and a new class format. That's why I'd rather take the best of Scala and put it in Java.
True. However, Java and Scala can coexist peacefully on the JVM platform.
Judging from how long it took Java to incorporate lambda expressions I am not going to hold my breadth.
Besides, Java already competes with .NET. Adding another competitor will just fragment the market further making it harder for developers to cooperate. We don't need many platforms, just a few or even one really good one.
Even .NET has many languages (VB, C#, F#, etc). One more JVM language will not hurt. Both .NET and Java must compete with Ruby, Python, and JavaScript (especially node.js).
JavaScript is an interesting language. It tends to attract the best and the worst programmers.
Judging from how long it took Java to incorporate lambda expressions I am not going to hold my breadth.
It's a shame Oracle bought out Sun Microsystems. I was worried Java would slowly die because of that.
JavaScript is an interesting language. It tends to attract the best and the worst programmers.
JavaScript is unavoidable today. But you can develop correctly in it. You just have to ignore most of the language and stick with good design and implementation patterns.
By the way, JavaScript has nothing to do with Java. It's name comes from a marketing ploy. It was originally called LiveScript.
I wouldn't say .NET and Java compete with JavaScript. The later is used for client-side code in browsers. The former are used in server-side code and applications.
Even .NET has many languages (VB, C#, F#, etc).
And pointlessly so. I'd get rid of all but C#. But I don't want to get into a religious discussion...
JavaScript is unavoidable today. But you can develop correctly in it. You just have to ignore most of the language and stick with good design and implementation patterns.
Yep. It is a highly flexible language with a few oddities.
I wouldn't say .NET and Java compete with JavaScript. The later is used for client-side code in browsers. The former are used in server-side code and applications.
Node.js is all the rage right now. It is a server-side technology.
I hope Dart will replace JavaScript soon.
And pointlessly so. I'd get rid of all but C#. But I don't want to get into a religious discussion...
Nothing religious... but you may want to take a look at F#. Its closest cousin is probably OCaml. It has one of the best type systems as a mainstream-ish language.
http://www.centralvalleybusinesstimes.com/stories/001/?ID=27496
Businesses are investing more dollars in mobile and big data initiatives, and they need skilled technology and creative professionals to support these efforts
I love this word, "creative".
So a bunch of idiot MBA-ologist managers are suppose to figure out whose a "creative" hire?
Seriously, do ppl really believe this tripe?!
« First « Previous Comments 46 - 71 of 71 Search these comments
http://singularityhub.com/2014/12/28/future-of-work-part-ii-why-teaching-everyone-to-code-is-delusional/