There have been some... developments since 'PHP: A Fractal of Bad Design'
Oh, and apparently everyone should tell about the better replacement tools rather than just keep banging on about how retarded PHP is.
Last edited by Daneel Trevize; June 29 2012 at 06:13:52 PM.
that's because PHP is so horribly broken that attempting to fix it is about the same as summoning elder gods, also known as a really fucking bad idea™
of course, a lot of the alternatives are even more retarded, and PHP is being used as a "beginners language" along with Java, quite possibly the two worst languages produced the last 20 years, not counting mindfuck things like white space.
I thought what I'd do was, I'd pretend I was one of those Thukkers, that way I wouldn't have to have any goddamn stupid useless conversations with anybody.
Originally Posted by Nu11u5
I like 90% of scala, but they went overboard with conventions, I like Groovy, but not everything can be scripted.
Functional languages are fun, Clojure is a hoot, but most people don't "get" functional languages, so that's not going outside the hobby sphere any time soon.
Java is one of the best TDD platforms and integrates with almost everything. I can deal with the run time typed collections and the lack of native lambda support.
Python is retarded and Perl is sort of OK for string-manipulation scripts.
Why do I have to wait for you to get off of your behind to hand me a paper document (via a chain of intermediaries, no less) that you expect me to then scan back into electronic format and upload for you, when you could simply email me the original Word document the same day you go to print.
That's why I haven't published your newsletter on your website. Granted, it doesn't seem like anyone but me has noticed.
Because others of you might be getting sick of this:
Fucking focus bug isn't a Firefox thing, it's Adobe Flash, nbs. Options are disable Protected Mode, lolnope, or keeping a web page with Flash content open.
getting it to load takes the better part of ten minutes, on a Core i5 box, and its just chugging along at full speed on a single core the entire time.
Java has great performance right up until it encounters the real world, then it all seems to sort of fall apart and it goes off to a corner to cry for twenty minutes while deciding to draw the fucking UI box.
the problem is nobody gives a fuck about small "edge cases" where Java can outrun everything up to and including C++, it just does not fucking matter because real world performance is NEVER going to be that fast anyway and the second the coffee cup logo comes up, people invariably go for a cup of coffee because it's going to take a while before they can actually use the application.
and then there's Netbeans and Eclipse :motherofgod: :thehorror:
Last edited by Liare; June 30 2012 at 05:58:28 PM.
Impressive, what kind of field is your company in? Last time i had to work with python it did'nt perform that well, that was 3 years ago tho, things have prolly catched up by now.Originally Posted by erichkknaar
Comments like that tell me you are either confusing something with Python or are just confused. Python makes getting "easy stuff" done very trivial. I suppose it depends on your definition of easy stuff, can you load a python script into a web server and run it like PHP? No, there's WSGI to worry about but that's rarely a real-world problem. But getting reasonably complex systems done in Python is an absolutely joy since you don't always need to write a lot of boiler plate for simple operations. I've used it for several large, but decouple-able systems in the past and continue to use it.
Python is definitely my language for choice for anything from RESTful Web Services and/or Sites (who does this anymore, it's all mobile baby!) to reasonably complicated data crunching and analysis apps. I've done a few things in the latter ranging from demographics modeling to some financial stuff. In both cases I had reasonably large data-sets and eventually did some heavy monte-carlo simulations. Is Python slow for the latter? Sure, Java could run laps around it, but it's all about priorities. I could write something without worrying too heavily about performance in a forth of the time and SLOC. If I ever had to run these continuously I would of course convert them to a more powerful language. But for prototyping, it's wonderful. Lots of financial and especially scientific companies use Python because it is quick to develop in and reasonably powerful. There's also stuff like Cython if you feel the need to optimize.
As for the "too scripty" comment, I'm really not sure what you're talking about. It is easy to make a python script to do one-off (or simple intermittent) tasks but that's not really what it shines at, and chances are for most scripting a shell script would be quicker and more portable. Python is dynamically typed and relies heavy on duck-typing which obviously places it in the dynamic language camp. However it is serious when it comes to type conversion, exception handling, etc. Unlike most languages people deride as scripting languages it will not allow you to make a mistake and continue. It is also a language that heavily embraces the use of classes and objects. Best yet it is a language that strongly encourages the concept of there being only one right way to do something. This isn't to say it's difficult to accomplish anything in python, but rather in terms of the core language there is one way to create an object, there is one way to extend a class, there is one way to call a method, there is one way to access a super-class method, there is one (shorthand) way to pull something out of a list, a dictionary, etc. This is SUPER useful since I tend to read 10x as much code as I write. I can understand what other people wrote and their motivations, and never have any doubts about what pattern is being used. There is just no fucking magic. Granted, this is the case with most serious languages, and this complaint is only valid against the "web languages."
Perhaps that's why I like Python, my job has mostly involved creating backends and web services for the web. I've worked at shops that have used "web" languages and have been utterly frustrated with PHP and JS (especially on a server, fuck no). Python feels like a real language and can do the same tasks, and faster. And libraries are amazing since this is a language that isn't exclusively focused on the web. Package management is a joy, you feel like you're in an extremely vibrant ecosystem (in spite of it's "small" size).
Now as for the topic of Java. This is a language that gets way too much unreasonable hatred. I'm not too concerned about issues like code portability, and can't really speak too much on that. I did some serious Android development for a while and I loved the fact that I could drop in a library that I use on a server and just be able to use it. But this wasn't a really large sample size, and never did I care about running the same application across different platforms.
I'm not sure what you're talking about it being great until you execute it. Are you complaining about it being slow to deploy? Or not being to run a program? I'm just not following. I do find it a bit painful to deploy in some instances where I used it, but now you can embrace (if you wish) features like hot-swapping code. Frameworks like Play integrate it out of the box for their development environments. The most painful deployment I ever experienced was about a 30-second compile (incremental) / startup time but that was on a reasonably complex server application that did a lot of startup tasks (this is a function of that specific application, not a language deficiency).
As for Java being slow? Are you one of those fucktards that knows nothing about programming and thinks C++ is the best language because games are developed in it? I mean WTF the language is incredibly fast. There is just no fucking doubts about that, the debian computer language benchmark game shows it being roughly on parity with C and C++ (typically 50% slower) at the cost of increased memory usage. Of course, with synthetic benchmarks it's expected to see Java fail at memory usage (something about a JVM and all that Jazz). And I would work with Java over C and especially C++ any day of the week.
i write mostly Perl, Python, VBS and Powershell actually, the last is a bit like poking a rusty fork into your hand every ten seconds but that's because its designed to be that awful.
my problem with Java has always been and will probably always be that it just does not perform that well out in reality, a five second wait for a UI to draw/update is par-the-course for most Java applications and it's not really a big deal until you have to use it in any sort of production environment, add on top of that the fact that Java JRE's are more or less another layer of security holes to keep track of (it's nigh impossible to avoid it integrating into the browser and presenting its "sweet" API's that way) and that i have yet to see a professionally written Java application that can even qualify as a well written stable piece of software and you got a awful lot of perfectly justified hatred.
it might run its actual calculations faster than say C#, but that's really not anything that's going to make me any less angry after sitting five to fifteen fucking seconds waiting every time i have the audacity to press a god damn UI button.
and then there's the utter lack of professionalism surrounding the whole thing, Java always reeks of "good enough". things like this should not fucking happen, ever.
I still don't understand the hatred for PHP, I used to develop quite a lot in it, and for a good many things it's great. Sure, from an architectural standpoint it may suck, but from a usability perspective it's great. Probably the only strangenesses I've noticed are the mysql_real_escape_string thing and overriding the php.ini config in code doesn't always work properly. As I understand, well-implemented PHP scripts are perfectly secure on an updated server with proper network security practices.
I'd be happy to switch for everything going forward if there was an alternative that was as absolutely dead simple to implement. For doing simple stuff, inlining code in HTML is an absolute necessity. Setup on a PHP-enabled server is as simple as changing the extension in most cases. Serious question, is there anything else out there like that?