Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×

Comment Re:Not that simple (Score 1) 294

Ironically a lot of JavaScript developers would tend to agree with a lot of your points. When you come to programming writing code for six to 20ish at least mildly disagreeing interpreters of the very code you're writing, many of them with their own proprietary versions of an essential API, you develop a healthy respect for reducing baggage, avoiding needless dependencies, and thinking very carefully about how to keep your code legible and easy to modify. I absolutely think over-reliance on IDES/tooling to read and fix the code for them has made a lot of Java and C# devs weaker programmers than they could be and that a side benefit of being able to execute code instantly is that JS devs were less interested in tools that did the work for them. I actually had a guy on StackOverflow tell me to stop joshing about actually writing reusable/portable code as if he couldn't imagine somebody doing something loosely coupled enough to make that possible no too long ago.

But don't be too quick to get on that garbage collection bandwagon. In many ways, the more dynamic scripting languages, JS in particular IMO, are closer to C in spirit than C# or Java because they are (JS in particular) informed by a design philosophy that doesn't give a rat's ass about protecting you from yourself or any B-grade programmers on your team. It is exceedingly flexible, will let you do spectacularly awful things to yourself and you get burned. And you learn. And you stop. And it happens pretty fast. What a concept. Power, flexibility and willful incompetence either adjusts or will want to show itself the door. I don't ever want it any other way. One of my favorite frameworks hinges on the concept of matching URLs with regular expressions. It's amazing how many useless jagoffs that knowledge requirement eliminates.

But there's really not much in the way of limits on performance in a language like JS or Python where you can very easily bind to C or C++. IMO, it's the perfect combination. All the higher level concepts and flexibility to build APIs that help you keep things lean and understandable and easy to modularize/reuse with all the performance you need when it becomes critical. I'm still a rank noob at C/C++ but the more I read up on C the more of a natural fit it feels like in tandem with JS. I couldn't write a maintainable app with it and I wouldn't have the first clue how but the JS, IMO is probably better suited to gluing things together. Or at the least I seem to have a hell of an easier time of it than the Java or C# devs and those were supposed to have an easier time of it than C/C++ but mostly I think they wandered off of that path and landed in this weird place where it was more about making sure you could still pull things off that were adequate with a bunch of mediocre programmers. And gee didn't that set the bar high. Most Java web devs at the median skill-level can't even be bothered to learn HTML.

I'm definitely not sure what you mean by large projects though. Do you mean like say... OS/2? Okay, maybe that was cheap but MMOs are certainly large projects. Windows finally got a near-total rewrite. Complex applications are constantly producing new versions with new functionality. The folks in Silicon Valley are doing very complicated things with very large sets of data nowadays. Larger, complex apps might be less representative in this latest technology explosion but I doubt there's fewer of them per capita than there were in your day.

Just because smartphones and the web have made smaller projects much easier to distribute, market, and profit from, doesn't mean people forgot how to write larger, more advanced apps, or got any less worse at making complete disasters of them for that matter. One thing I would say has dramatically improved is turnaround time on the UI side of things. With web technology and many other mostly-non-Java solutions we can knock out robust GUIs almost instantly compared to what I've heard from more veteran devs I'm friends with from the late '80s and '90s..

But seriously, if you still code for interest, give the JavaScripts and the Pythons a chance. You might find them surprisingly agreeable.

Comment Re:Give up the keys (Score 1) 125

I'm a developer and deeply grateful that running the network is somebody else's job given that I can't even seem to figure out what in a windows 7 reinstall/re-update has completely nuked my wireless connectivity on my silly little home network. Never assume the other guy's job is easy. Even if you know a thing or two about how to DIY.

Comment RE:Vive le Galt! (Score 1) 695

It's kind of like saying "What part of electricity gets light to the most in need?" Money is just an abstraction of value and a device for distributing it. Fairness isn't its job. If it was more challenging to screw the little guy in the barter system, that's only because everything is more challenging in a barter system and while I'm no great scholar of the history of barter, I'm pretty sure they still screwed the little guy when there wasn't money. Socialism and communism haven't prevented the screwing of the little guy. Fear of Hell hasn't stopped the screwing of the little guy. The information age has really just made the screwing of the little guy considerably more efficient.

At some fucking point, we have to evolve beyond this BS but it hasn't happened yet and trying to blame it on money is ultimately dodging culpability for the real problem which is us. Let's take Gene Roddenberry screwing over Alexander Courage for instance:

http://www.snopes.com/radiotv/...

That's the guy who famously believed money was the root of all evil and dared imagine a world without it. But was the problem really money or was it that he was an asshole? In a Star Trek world he could have just as easily stolen credit for doing the work. There's always something of value to steal or threaten to get what you want or to get people to give you what you want. Taking money away doesn't change that.

Comment JavaScript is paradigm-free (Score 1) 505

I would actually disagree with the statement that it's paradigm free. While I respect C# as a feat of language design, one thing I don't like about its implementation of every language feature it can get its hands on is that it doesn't have a very strong opinion and there's just a crap-ton of syntax you have to learn as you work with it (although given the alternative I'd rather have first-class funcs in any language at the expense of bonus syntax). JS encourages OOP and functional used together and has strived to do a lot with a little syntax. Strictly imperative isn't really possible if you're using it for web UI as much of the DOM relies on event handlers and you can't really escape the topics of closure or OOP when you start doing non-trivial stuff from there. Functions can be classes or methods or in many cases both.

Comment RE:Run to the hills! (Score 1) 505

That's the default behavior in a language that can mix numbers and strings and then convert them to match dynamically for purposes of comparison in the same array, yes. Not a very hard problem to solve:

[10,1,5].sort(sortNumeric);

function sortNumeric(a,b){ return a-b; }

So what you in ignorance thought was a flaw is actually a demonstration of one of JS's most powerful features. We've been writing functional code long before F# showed up.

Slashdot Top Deals

8 Catfish = 1 Octo-puss

Working...