| View previous topic :: View next topic |
| Author |
Message |
shrndegruv l33t


Joined: 18 Sep 2005 Posts: 658
|
Posted: Tue Feb 09, 2010 10:27 pm Post subject: |
|
|
| esper wrote: | | pjp wrote: | | esper wrote: | | I end up defaulting to java as my quickest way out of sys admin work while I'm stuck in this penis state. | Is it that you have a liking for web development, or a dislike of admin work and just want out? I'm more the latter, but don't have any real programming skills. There always seem to be jobs for developers though. *sigh* |
Both. There are only so many times i can stomach setting up shares/user groups/and security policies. Shit I've been doing since highschool. I really dig programming of any kind. I'm focussed on web apps now simply because I feel that in the near future desktop apps are going to fade in the light of new web technology.
I'm all sorts of thankful for the insights from this thread. I was hoping to see advocates for the aspects of java that don't get much lime light. |
you are right. there is going to be so much work putting an RIA on top of existing server side components. That why i have been focusing on ext-js and other js apps that run in the client.... _________________ long is the way, and hard, that out of hell leads up to light... |
|
| Back to top |
|
 |
shrndegruv l33t


Joined: 18 Sep 2005 Posts: 658
|
Posted: Tue Feb 09, 2010 10:28 pm Post subject: |
|
|
| Xaero wrote: | | jdmulloy wrote: | | It's cross-platform alright. Runs like shit everywhere. | Can I get a ++??
But seriously, I tried coding a Minesweeper application in Java. And maybe it was a matter of me just having coded it that badly, but at some point I realized that it was just too resource intensive and it just wasn't gonna work. IIRC(it was awhile ago I admit) the problem happened when clicking a blank space, and the program then had to iterate through adjacent spaces and click() each button, beforehand checking if isClicked() was true. And if that space was blank then calling the method on that button etc. It took about a second for each (program-generated) button click. I was pretty painful to watch. Again I don't know if that was totally on me but even for the 3ghz Pentium 4 I coded it on I feel like it should have been no sweat. shrugs |
you are doing it wrong. a rudimentary minesweeper should be cake. _________________ long is the way, and hard, that out of hell leads up to light... |
|
| Back to top |
|
 |
Kate Monster Apprentice

Joined: 13 Jun 2006 Posts: 209 Location: Clarkston, Michigan
|
Posted: Tue Feb 09, 2010 10:38 pm Post subject: |
|
|
| shrndegruv wrote: | | Xaero wrote: | | jdmulloy wrote: | | It's cross-platform alright. Runs like shit everywhere. | Can I get a ++??
But seriously, I tried coding a Minesweeper application in Java. And maybe it was a matter of me just having coded it that badly, but at some point I realized that it was just too resource intensive and it just wasn't gonna work. IIRC(it was awhile ago I admit) the problem happened when clicking a blank space, and the program then had to iterate through adjacent spaces and click() each button, beforehand checking if isClicked() was true. And if that space was blank then calling the method on that button etc. It took about a second for each (program-generated) button click. I was pretty painful to watch. Again I don't know if that was totally on me but even for the 3ghz Pentium 4 I coded it on I feel like it should have been no sweat. shrugs |
you are doing it wrong. a rudimentary minesweeper should be cake. | I should clarify: the app itself was an exercise on teaching myself Java, back when I was in high school. I was probably doing it very, very wrong I did at least get it working, excluding maybe the fact board size and number of mines was hardcoded. |
|
| Back to top |
|
 |
runningwithscissors Guru


Joined: 21 Apr 2006 Posts: 454 Location: the third world
|
Posted: Wed Feb 10, 2010 6:27 am Post subject: |
|
|
| big dave wrote: | | .... (java, php, python, perl, c++, c#). you pick the one that you hate the least... | Or you can pick them all, depending upon which is suitable for which job. I've written programmes (for work, not as a hobby) in all of those, except python. _________________ I have shit in my britches. Hang it around your neck and wipe your mouth on it. -- Martin Luther |
|
| Back to top |
|
 |
esper n00b


Joined: 19 Aug 2007 Posts: 6 Location: FL
|
Posted: Wed Feb 10, 2010 7:13 am Post subject: |
|
|
| runningwithscissors wrote: | | big dave wrote: | | .... (java, php, python, perl, c++, c#). you pick the one that you hate the least... | Or you can pick them all, depending upon which is suitable for which job. I've written programmes (for work, not as a hobby) in all of those, except python. |
Yes but it helps to focus on one at a time to become proficient in it enough that I can claim it on my resume in a job interview. _________________ Faith is a cop-out. If the only way you can accept an assertion is by faith, then you are conceding that it can’t be taken on its own merits.
- Dan Barker |
|
| Back to top |
|
 |
doubleagent Guru


Joined: 15 Apr 2005 Posts: 444 Location: 127.0.0.1
|
Posted: Wed Feb 10, 2010 7:41 am Post subject: |
|
|
Don't do Java. My experience's with Sun's JVM has been quite pleasant, but the Java language is horrid (I never quite realized how bad until using D). If you must learn something on the JVM choose Clojure or Scala. Clojure is the [infinitely] better choice but is a little exotic. Look at the website to see if it appeals to you. The two major advantages (over scala) are listed below, but there are others:
tight integration with java (wrappers never needed, except *maybe* in rare cases like google's guice)
software transactional memory system _________________
| shickapooka wrote: | | i think they programmed [otw] based on a right-wing jewish-nigger-nazi, his gay, retarded, left-wing love slave with webbed feet, and their three headed cat that poops uncontrollably. the cat is also an apple fanboy |
|
|
| Back to top |
|
 |
esper n00b


Joined: 19 Aug 2007 Posts: 6 Location: FL
|
Posted: Wed Feb 10, 2010 9:52 am Post subject: |
|
|
I have looked at closure, and I will look deeper into it at some point. My main focus though is getting back to developing full time and the jobs that mention clojure <<<< java. I agree that it is neat looking though. _________________ Faith is a cop-out. If the only way you can accept an assertion is by faith, then you are conceding that it can’t be taken on its own merits.
- Dan Barker |
|
| Back to top |
|
 |
Dr.Willy Apprentice

Joined: 15 Jul 2007 Posts: 259 Location: NRW, Germany
|
Posted: Wed Feb 10, 2010 10:59 am Post subject: |
|
|
So now object orientation is outdated and functional languages are all the rage?
Oh dear. |
|
| Back to top |
|
 |
Shining Arcanine Veteran

Joined: 24 Sep 2009 Posts: 1110
|
Posted: Wed Feb 10, 2010 1:28 pm Post subject: |
|
|
| Dr.Willy wrote: | | speeddemon wrote: | I always love seeing these threads were everyone rips on java, just makes me feel all warm and fuzzy.  |
Why would anyone like it?
The python/ruby guys don't like it, because its a lot like C++ and the C++ guys don't like it because it's a lot like a scripting language.
That makes java kinda useful-ish everywhere, but doesn't win anybody's heart. |
Business executives who seem to like it. Them and one computer science professor I have who hates pointers. I am told that the university teaches Java because the local businesses (who likely "donate" to the computer science department) want people proficient in it. Java is the new Cobol. :/ |
|
| Back to top |
|
 |
shrndegruv l33t


Joined: 18 Sep 2005 Posts: 658
|
Posted: Wed Feb 10, 2010 2:55 pm Post subject: |
|
|
| Dr.Willy wrote: | So now object orientation is outdated and functional languages are all the rage?
Oh dear. |
there is a bit of that going on, yes. _________________ long is the way, and hard, that out of hell leads up to light... |
|
| Back to top |
|
 |
doubleagent Guru


Joined: 15 Apr 2005 Posts: 444 Location: 127.0.0.1
|
Posted: Wed Feb 10, 2010 10:46 pm Post subject: |
|
|
| Dr.Willy wrote: | So now object orientation is outdated and functional languages are all the rage?
Oh dear. | To hear Rich Hickey talk it's as if object oriented imperative languages are the new spaghetti code. There's a margin of truth to that but not enough to justify this new wild fascination with functional languages. Clojure has it's own merits though. _________________
| shickapooka wrote: | | i think they programmed [otw] based on a right-wing jewish-nigger-nazi, his gay, retarded, left-wing love slave with webbed feet, and their three headed cat that poops uncontrollably. the cat is also an apple fanboy |
|
|
| Back to top |
|
 |
Dr.Willy Apprentice

Joined: 15 Jul 2007 Posts: 259 Location: NRW, Germany
|
Posted: Thu Feb 11, 2010 12:12 am Post subject: |
|
|
| doubleagent wrote: | | To hear Rich Hickey talk it's as if object oriented imperative languages are the new spaghetti code. There's a margin of truth to that but not enough to justify this new wild fascination with functional languages. |
Tell me about it...
Just today I had the pleasure to experience what can go wrong with object oriented code. Extend this class, overwrite that method with a noop, get a delegate from a factory instanciated via reflection from an xml file.
Seriously, if you try hard enough, you can fuck up any programming paradigm.
| doubleagent wrote: | | Clojure has it's own merits though. |
Some examples? I just had a look at it and saw it resembled scheme, which I hated with passion.
(I mean... does (+ (- 7 2) (/ 1 9)) look like a sane mathematical expression? What is wrong with these people??) |
|
| Back to top |
|
 |
speeddemon Apprentice

Joined: 27 Sep 2003 Posts: 162
|
Posted: Thu Feb 11, 2010 12:44 am Post subject: |
|
|
| shrndegruv wrote: | | Dr.Willy wrote: | So now object orientation is outdated and functional languages are all the rage?
Oh dear. |
there is a bit of that going on, yes. |
I've been thinking that for the last several years. Seems like it will probably end up being a cycle. People got carried away with OO, forcing it down everyone's throats. People start to rebel and decide that you don't need OO. Give it awhile and it will swing the other way again. Personally I get annoyed with a language forcing OO on you to the degree that java does, going overboard with "everything is an object, and every action must be performed on an object by an object."
I have tended to stay away from OO unless its a large (non web) project. _________________ Cats are deadly animals. If you stick your nose up their crotch and snort their piss, THEY CAN KILL YOU!!! |
|
| Back to top |
|
 |
doubleagent Guru


Joined: 15 Apr 2005 Posts: 444 Location: 127.0.0.1
|
Posted: Thu Feb 11, 2010 12:46 am Post subject: |
|
|
| Dr.Willy wrote: | | Some examples? I just had a look at it and saw it resembled scheme | Yeah, it's a lisp. Some people never get used to it, and those on the other side of the fence can't describe this without sounding prideful. :sigh: I don't like Fortran. Does that mean I'm intellectually inferior to someone that does? But I digress.
I suppose the Clojure app that really grabbed my attention was the ant colony, which demonstrates Java integration, concurrency, software transactional memory (refs), and immutability. You can find the concurrency video, along with the slides and code here. I highly encourage you to watch that video and play around with the ant colony before passing final judgment. _________________
| shickapooka wrote: | | i think they programmed [otw] based on a right-wing jewish-nigger-nazi, his gay, retarded, left-wing love slave with webbed feet, and their three headed cat that poops uncontrollably. the cat is also an apple fanboy |
|
|
| Back to top |
|
 |
big dave n00b

Joined: 03 Jul 2009 Posts: 0 Location: in your base, killin all your doodz
|
Posted: Thu Feb 11, 2010 2:07 am Post subject: |
|
|
| shrndegruv wrote: | | Xaero wrote: | | jdmulloy wrote: | | It's cross-platform alright. Runs like shit everywhere. | Can I get a ++??
But seriously, I tried coding a Minesweeper application in Java. And maybe it was a matter of me just having coded it that badly, but at some point I realized that it was just too resource intensive and it just wasn't gonna work. IIRC(it was awhile ago I admit) the problem happened when clicking a blank space, and the program then had to iterate through adjacent spaces and click() each button, beforehand checking if isClicked() was true. And if that space was blank then calling the method on that button etc. It took about a second for each (program-generated) button click. I was pretty painful to watch. Again I don't know if that was totally on me but even for the 3ghz Pentium 4 I coded it on I feel like it should have been no sweat. shrugs |
you are doing it wrong. a rudimentary minesweeper should be cake. |
the problem is the shittiness in developing UI concepts in MVC. everyone with a basic training in abstraction can develop a model. but the old guys are trying to figure out wtf MVC means (apparently it means sending a fuckton of hooks in the forms of constants to various different sections of the app). all the new kids who grew up on web development fundamentally link the view with the controller. i've consulted in some places where they actually pushed low level controller into the model and high level left in the view... and ignored the rest of the controller concept. some guys get really aggro when you talk about smarty or oreilly's MVC concept because it's usually "textbook programming that doesn't work in the real world" (i've actually heard this quote multiple times). from my experience, i really don't see a problem in that mentality.
the problem is when you go BACK from this McV design to conventional languages. for instance with java, lets say you have keylisteners and clicklisteners. well... the clicklisteners have to be bound to a view, and all but global keys have to be bound to the view (otherwise your keylistener is now running some ridiculous switch-case trying to figure out wtf page/window/screen is open). when you have to put almost all your controller into your view, that's not MVC, and it's almost instantly a mess. |
|
| Back to top |
|
 |
shrndegruv l33t


Joined: 18 Sep 2005 Posts: 658
|
Posted: Thu Feb 11, 2010 3:21 am Post subject: |
|
|
| big dave wrote: | | shrndegruv wrote: | | Xaero wrote: | | jdmulloy wrote: | | It's cross-platform alright. Runs like shit everywhere. | Can I get a ++??
But seriously, I tried coding a Minesweeper application in Java. And maybe it was a matter of me just having coded it that badly, but at some point I realized that it was just too resource intensive and it just wasn't gonna work. IIRC(it was awhile ago I admit) the problem happened when clicking a blank space, and the program then had to iterate through adjacent spaces and click() each button, beforehand checking if isClicked() was true. And if that space was blank then calling the method on that button etc. It took about a second for each (program-generated) button click. I was pretty painful to watch. Again I don't know if that was totally on me but even for the 3ghz Pentium 4 I coded it on I feel like it should have been no sweat. shrugs |
you are doing it wrong. a rudimentary minesweeper should be cake. |
the problem is the shittiness in developing UI concepts in MVC. everyone with a basic training in abstraction can develop a model. but the old guys are trying to figure out wtf MVC means (apparently it means sending a fuckton of hooks in the forms of constants to various different sections of the app). all the new kids who grew up on web development fundamentally link the view with the controller. i've consulted in some places where they actually pushed low level controller into the model and high level left in the view... and ignored the rest of the controller concept. some guys get really aggro when you talk about smarty or oreilly's MVC concept because it's usually "textbook programming that doesn't work in the real world" (i've actually heard this quote multiple times). from my experience, i really don't see a problem in that mentality.
the problem is when you go BACK from this McV design to conventional languages. for instance with java, lets say you have keylisteners and clicklisteners. well... the clicklisteners have to be bound to a view, and all but global keys have to be bound to the view (otherwise your keylistener is now running some ridiculous switch-case trying to figure out wtf page/window/screen is open). when you have to put almost all your controller into your view, that's not MVC, and it's almost instantly a mess. |
can't you semi-solve this problem by having the things that have to be in the view (like buttons, input fields, etc) either directly tied to the model (in the case of inputs) or controllers (in the case of control flow inputs)? Then you can build MVC like code, even if the language features don't support it natively. _________________ long is the way, and hard, that out of hell leads up to light... |
|
| Back to top |
|
 |
doubleagent Guru


Joined: 15 Apr 2005 Posts: 444 Location: 127.0.0.1
|
Posted: Fri Feb 12, 2010 5:11 pm Post subject: |
|
|
| doubleagent wrote: | | Dr.Willy wrote: | | Some examples? I just had a look at it and saw it resembled scheme | Yeah, it's a lisp. Some people never get used to it, and those on the other side of the fence can't describe this without sounding prideful. :sigh: I don't like Fortran. Does that mean I'm intellectually inferior to someone that does? But I digress.
I suppose the Clojure app that really grabbed my attention was the ant colony, which demonstrates Java integration, concurrency, software transactional memory (refs), and immutability. You can find the concurrency video, along with the slides and code here. I highly encourage you to watch that video and play around with the ant colony before passing final judgment. | I'm just curious about what you think of Clojure after having watched that video. _________________
| shickapooka wrote: | | i think they programmed [otw] based on a right-wing jewish-nigger-nazi, his gay, retarded, left-wing love slave with webbed feet, and their three headed cat that poops uncontrollably. the cat is also an apple fanboy |
|
|
| Back to top |
|
 |
mixmasta Tux's lil' helper


Joined: 16 Oct 2004 Posts: 80 Location: Earth, Sol, Orion Arm, Milky Way Galaxy, Virgo Super-Cluster
|
Posted: Sat Feb 13, 2010 1:45 am Post subject: |
|
|
Haha, quite a few great lol comments here. "Runs like shit everywhere/programming with mittens."
Frankly, I'm a bit surprised though. I gave up java about 10 years ago, about 15 minutes after I took the python tutorial for the first time. It was a pig back then, write once, debug everywhere. The 30 second startup time and keyboard lag on swing drove me nuts.
According to java fans however, those issues are long past, or so I've read. Faster than C++ they tell me.
The posts here from 2010+ disagree. Is java still that slow? I'd have thought eight cores (i7) would be enough finally handle it. _________________ http://www.geekademy.com/ |
|
| Back to top |
|
 |
shrndegruv l33t


Joined: 18 Sep 2005 Posts: 658
|
Posted: Sat Feb 13, 2010 2:10 am Post subject: |
|
|
| mixmasta wrote: | Haha, quite a few great lol comments here. "Runs like shit everywhere/programming with mittens."
Frankly, I'm a bit surprised though. I gave up java about 10 years ago, about 15 minutes after I took the python tutorial for the first time. It was a pig back then, write once, debug everywhere. The 30 second startup time and keyboard lag on swing drove me nuts.
According to java fans however, those issues are long past, or so I've read. Faster than C++ they tell me.
The posts here from 2010+ disagree. Is java still that slow? I'd have thought eight cores (i7) would be enough finally handle it. |
java can be as fast as C or faster in certain situations. The JIT can really work wonders on optimizing the byte code when running. The caveat of java is that it needs to (typically at least) run in a JVM, so there is start up time. Some stupid speed comparisons online say C took .76767 seconds (or whatever) and java to 6 (or whatever) seconds to sort X elements, but if you read the fine print they are counting the java start up time. not comparing apples to apples. If you are going to compare speed, compare the speed it takes to run the test, and put an asterik saying that java has the con (or plus depending on how you look at it) of running in a JVM or app container... _________________ long is the way, and hard, that out of hell leads up to light... |
|
| Back to top |
|
 |
Kenji Miyamoto Veteran


Joined: 28 May 2005 Posts: 1452 Location: Looking over your shoulder.
|
Posted: Sat Feb 13, 2010 2:21 am Post subject: |
|
|
| shrndegruv wrote: | | mixmasta wrote: | Haha, quite a few great lol comments here. "Runs like shit everywhere/programming with mittens."
Frankly, I'm a bit surprised though. I gave up java about 10 years ago, about 15 minutes after I took the python tutorial for the first time. It was a pig back then, write once, debug everywhere. The 30 second startup time and keyboard lag on swing drove me nuts.
According to java fans however, those issues are long past, or so I've read. Faster than C++ they tell me.
The posts here from 2010+ disagree. Is java still that slow? I'd have thought eight cores (i7) would be enough finally handle it. |
java can be as fast as C or faster in certain situations. The JIT can really work wonders on optimizing the byte code when running. The caveat of java is that it needs to (typically at least) run in a JVM, so there is start up time. Some stupid speed comparisons online say C took .76767 seconds (or whatever) and java to 6 (or whatever) seconds to sort X elements, but if you read the fine print they are counting the java start up time. not comparing apples to apples. If you are going to compare speed, compare the speed it takes to run the test, and put an asterik saying that java has the con (or plus depending on how you look at it) of running in a JVM or app container... | Well, if GCC takes two seconds to compile the C code, Java is still slower. _________________ [ Kawa-kun, new and improved!! ]
Alex Libman seems to be more of an anarchist than a libertarian. |
|
| Back to top |
|
 |
Dr.Willy Apprentice

Joined: 15 Jul 2007 Posts: 259 Location: NRW, Germany
|
Posted: Sat Feb 13, 2010 2:32 pm Post subject: |
|
|
| doubleagent wrote: | | doubleagent wrote: | | Dr.Willy wrote: | | Some examples? I just had a look at it and saw it resembled scheme | Yeah, it's a lisp. Some people never get used to it, and those on the other side of the fence can't describe this without sounding prideful. :sigh: I don't like Fortran. Does that mean I'm intellectually inferior to someone that does? But I digress.
I suppose the Clojure app that really grabbed my attention was the ant colony, which demonstrates Java integration, concurrency, software transactional memory (refs), and immutability. You can find the concurrency video, along with the slides and code here. I highly encourage you to watch that video and play around with the ant colony before passing final judgment. | I'm just curious about what you think of Clojure after having watched that video. |
Well, what do I think about Clojure, now that I've watched the video.
He didn't talk about Clojure as much, as he talked about concurrency and syncing, did he?
That said he did raise a few interesting points about concurrency in objecoriented-languages and how functional languages solve these problems. On the other hand I had the impression that many of these advantages he mentioned actually came from the classlibrary and its datastructures. I haven't had a look at these, but should I run into concurrency problems it might be easier to use Clojures classlibrary form Java than it is to learn and use Clojure in the first place.
This also raises another question: if objectoriented code is the new spaghetti-code in terms of concurrent programming and Clojures strenght is concurrent programming, whats the point of being able to use javas classlibrary? You can now use ArrayLists, HashMaps and TreeSets from clojure. Oh by the way, if concurrency was the reason you chose clojure, using them will break your program.
So what does that leave us with?
I picked up that functional languages are cool when it comes to concurrent programming and clojure offers a neat classlibrary for that.
Someone write Jaskell  |
|
| Back to top |
|
 |
big dave n00b

Joined: 03 Jul 2009 Posts: 0 Location: in your base, killin all your doodz
|
Posted: Sat Feb 13, 2010 3:26 pm Post subject: |
|
|
| Dr.Willy wrote: | | objectoriented code is the new spaghetti-code |
OO becomes spaghetti when people separate code elements too much while not understanding MVC (and its limitations). people make shit abstract, throwing in implements/interfaces way too much.
and it's only worse now with XML based layouts, because once upon a time, you had a button, and the button would be bound to a function, and you'd have code execute on the button's state. now, you have the button's state changes sent to some grand interpreter, which has to cross reference what the button was supposed to do and send the arguments that way. granted, i some apps use XML based layouts very well (like WoW with lua), but most of this stuff means having a function name, a constant int for the hook, a constant string for the text output, and a crapton of switch/case. |
|
| Back to top |
|
 |
doubleagent Guru


Joined: 15 Apr 2005 Posts: 444 Location: 127.0.0.1
|
Posted: Sat Feb 13, 2010 6:13 pm Post subject: |
|
|
| Dr.Willy wrote: | | should I run into concurrency problems it might be easier to use Clojures classlibrary form Java than it is to learn and use Clojure in the first place. | It wouldn't be idiomatic at all. But, if you're interested check out the LockingTransaction class in the core library.
| Quote: | | This also raises another question: if objectoriented code is the new spaghetti-code in terms of concurrent programming and Clojures strenght is concurrent programming, whats the point of being able to use javas classlibrary? You can now use ArrayLists, HashMaps and TreeSets from clojure. | Because the class library is huge, with a much greater scope than the collection classes.
| Quote: | | Oh by the way, if concurrency was the reason you chose clojure, using them will break your program. | The collection classes, yeah.  _________________
| shickapooka wrote: | | i think they programmed [otw] based on a right-wing jewish-nigger-nazi, his gay, retarded, left-wing love slave with webbed feet, and their three headed cat that poops uncontrollably. the cat is also an apple fanboy |
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|