- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
A Flatypus
Admin
Admin
I just can't picture a platypus climbing like that.
Admin
I mean, who in their right mind would speak Java and have to end every statement with a ; ?
Or Python, where much of the meaning of your words is held in the silence between them?
Or Perl, which would be indistinguishable from static?
Or VB/PHP/pickyourWTF, which would be indistiguishable from Tourette's syndrome?
Professional speaking is much better handled in a language like Klingon. You haven't truly heard a powerpoint presentation until you've heard it in the original Klingon.
--Joe
Admin
My eyes! The giggles do nothing!
Admin
Flash has one of the best programming languages out there behind it. AS3 is an excellent OOP, strongly typed language. Not to mention Flex, which is geared towards enterprise level applications. And which Adobe, in their infinite wisdom, abandoned right after pushing it like mad to many corporations. That was a huge debacle, but I digress. The sad thing is most everything that would've been done with Flash is done with Javascript now and JS is horrible by comparison. Adobe's stewardship of Flash has been a miserable failure.
Admin
Hmm, I just don't know where to begin.
So it is not "moral" for the government to pass laws against murder, because that would then be "forced"? I don't doubt that it would be nice if everyone behaved morally from their own free choice. But if it's a choice between hoodlums beating up and raping little old ladies, and the government or society forcing its morality on the hoodlumns, I choose "forcing morality".
And it is unreasonable to say, for example, "Make your arguments based on fact and not emotion", because that would be a "commandment"? Umm, no.
Admin
Flash binary is crazy good. No bytes. If something requires only 3 bits, that's what it passes. Reminds me of using unsigned numerics for storing "cash on hand". Also to the earlier comment about ColdFusion not meant for professional development -- didn't that sell for like > 100M on a startup budget of 20k? And the confluence -- sad that Harpoon was never released by Adobe after the ColdFusion buyout. We were to supposed to get Flash JSP generated from servlets... bummer.
Admin
Admin
Admin
Admin
Bronies! Magical things happen in the land of My Little Pony.
If the end-user of this software is a little 5 year old girl, then I don't see a problem. Otherwise, hire someone else fast because maintaining software written by a Brony is going to be vomit-inducing.
Admin
this i coming close: [image]
Admin
Admin
Admin
TRWTF is using a busy loop as a delay. Should've used a more formal time-delayed redirect or something that doesn't chew up CPU doing nothing. Everything else is peachy (except ASP, WTF man?).
Captcha: verto, that's what the unicorn got.
Admin
"It's really important that the user knows the server is doing important work."
"As opposed to us, right?"
Admin
What he said.
(FU Akismet. Seriously.)
Admin
Unless, of course, you're referring to Computer Generated Imagery. PHP might indeed be better than that for web development, slightly.
Admin
A WTF indeed, but sadly more common (I imagine) than some may realize. I came upon a similar issue before, where we wrote an iPad application that uploads data to a remote server. The data was mostly user-entered text (iPad-typed text, no less!), so as you can imagine the upload went by really quick.
Product management looked at it and were greatly distraught; how were they to know anything had been uploaded if the upload bar flashed by too quickly for the user to see move? Unacceptable user experience! Upload of text-based JSON must take longer.
Admin
That's specifically why I called out CGI, not the various languages that can interface with it. Because it doesn't matter what language you're using- CGI basically converts STDOUT into an HTTP response. Again, you can layer enough APIs on top of it to not make it utter shite, but the core premise is, itself, bankrupt.
Admin
Completely irrelevant, I know, but just like this conversation, there is no right answer.
Ok, just kidding. The greatest band in the history of the world really is Pearl Jam.
Admin
"Engineering is the art of doing for a shilling what any clown can do for a pound." Nevil Shute. You're a bit late...
Admin
I'll bet people would actually think the bank didn't do things properly if a withdrawl was quicker - and the whirring sound makes it clear to the user that something important is going on....
Admin
Actually, Turing-complete languages CAN be used to solve any programming problem. The problem of obtaining hardware with enough grunt to help facilitate this, however, cannot usually be solved using these languages.
The abilities of the language are not constrained by your pissie mainframe....
Admin
You can use any HTML generating library with CGI or copy your text from templates. CGI is neutral to all of this. So I really don't understand what you mean.
Even PHP can run over CGI. The decision between PHP as a module or via CGI is basically a question of performance vs. security. Is that what you're getting at? Though, as far as I'm concerned, if either performance and/or security is really an issue, I wouldn't use PHP anyway, but rather a compiled and/or type-safe language.
Admin
That reminds me of a website modification I had done once for a client. PDFs had to be shown, and normally those will just pop up in a new window (or the same window), with no progress indicator (if they are relatively small). The client, however, wanted some indication that the file was loading (so people do not click on the same link again furiously).
So at first, we tried to do loading the PDF via a flash service, which is pretty, and has a nicely animated loading image overlay... but the customer was not happy.
In the end, we did a short delay (client-side) before actually loading the PDF, with an image and saying "please be patient, PDF is loading" or sth like that. This made the client happy, and was implemented. The delay serves no practical purpose except to delay the loading of the PDF and to notify the user of the fact that he had just clicked that link.
Admin
This reminds me of the time when our 'server' applications (things that connect to databases, do some stuff, and connect to a back-end system) were actually Swing applications, with a GUI. Sure enough, you could stop and start such an application by clicking a button. One particular example had a little dog running about when the application was running, and the dog sitting down and wagging its tail when the application was stopped.
Obviously, there were a couple of disadvantages to this approach. For one thing, the 'server' applications all had their own window, all running on a Windows machine, and you have to take care not to log out. Also, the task bar was filled to the brim with windows.
The unimaginative brute that I was, I replaced the lot with a service framework that runs from the console and logs using log4j.
Admin
Summary of thread: Building a good UX is hard.
My observation: I just wish more user-facing software components were written by people who a) were aware of this and b) gave a flying fuck.
Case in point: PIN pad machines for Chip & PIN credit cards. Far too many do not update the display after you enter your PIN, until after they have had an approval from the card. A few will display "Veuillez patienter" immediately after you press the green button, and then "Code bon" after the card agrees, so you know they've heard you. (The ones I use say these things, because I live in France, so mostly use ones intended for use by French people. I'm not French.)
Admin
Turing-completeness says absolutely nothing about interacting with hardware, or about the timeliness of the production of results. These things matter a lot in the real world. (They are why a language like Brainfuck can't be used for serious web programming. Now, if you added syscalls then you could at least contemplate it…)
Admin
I am very glad that clicking on unicorn gave me the expected behavior
Admin
Actually, there is one problem that no Turing-complete language can solve: deciding if a program (written in the same language) will terminate.
A non-Turing-complete language can be devised to write programs which are guaranteed to terminate, so the decision is simple, it is always positive.
(Since you did not define "programming problem", to me this is a valid example of such a problem. If you had said "computable problem", you would be correct. "Real world" and "business" problem are subjective and not allowed in rational discussion.)
Admin
But we can live in hope.
Admin
Grr.
Admin
now that has nothing to do with the language. In 13 years I have yet to find a scope that didn't creap... if only a little. That is no excuse to write sloppy code though :p.
Admin
Admin
By popular demand (you asked for it): http://www.masswerk.at/cornifiedLoader/
Public Domain. (Don't know what that will mean in terms of kharma ...)
Admin
Totally forgot to advertise the name: "The Glorious WTF Cornified Loading Indicator" And here it is, by popular demand: http://www.masswerk.at/cornifiedLoader
Admin
Code maintenance is much like physical fitness. Only a great deal of work can get the code into shape... and only continuous effort can keep it that way. I can tell you how to prevent things from getting to that point... but the only way that I know of to turn bad code into good code involves a keyboard, a lot of hours and even more caffine.
Captcha: iusto - iusto write bad code too... but I know better now.
Admin
You could write a tiny script to delete these entities from the page, but this would just break the platform the code was generated by. Maybe you could use such a script to enforce a decent praxis:
I would not advise to use such a construct.
Admin
Ahem:
Admin
... ummm $(function() { alert('you are a dumb@$$ if you expect this to do your job for you!'); });
Admin
Admin
Admin
"cold fusion... but that is OBVIOUSLY not designed for professional use"
I say BS to this. ColdFusion is perfectly acceptable for enterprise level applications.
Get over yourself.
Admin
lol. Get over myself. :p. I didn't belittle Cold Fusion... I just said it is not designed for professional use. The reason I said that is simple. It was architected with drag and drop and wizards as the principal form of interaction. It is designed so that anybody with intelligence can produce information management sites without need for things like knowledge and experience. These features being the key selling point of the technology, the architecture incures a massive performance differential from large volumes of plumbing infrastructure. The programming language is then built on top to EXTEND the capabilities for users who take the time to learn it. Other platforms are the other way around... the language and infrastructure consuming a framework and then augmented with WYSIWYG.
It is good for proof of concepts, and it is good for small businesses that cannot afform a programmer. Comparitive performance however is so inferior (unless they have come a VERY long way in 2 years) is not even a potential argument. Cold Fusion (On Windows at least) actually manages to perform worse than JAVA. That does not smack of Enterprise scale to me... and certainly does not imply that it was intended for Enterprise.
Admin
If by "frameworks" you mean "best practices," and by "usually" you mean "frequently by newbies," then sure. The common PHP frameworks will force you into using good practices, too, but you don't need a framework to write good PHP. Every developer I know who has used PHP (even without a framework) for more than 18 months knows better than to merge implementation with document structure. The projects I work on in PHP have roughly 70% of their files as pure object-oriented code, no presentation, and the other 30% presentation files with a smattering of view logic where it's needed.
The assertion that all PHP developers can't write reliable, maintainable code, just because everybody's seen at least one PHP application with unreliable, unmaintainable code, is just as false as saying that every Christian hates gay people just because some Christians - who happen to be very loud and prominent in the media - hate gay people.
Perl is clearly the hippopotamus – bloated but deadly. ASP is the duck-billed platypus - so ugly your brain can't believe it's a real thing.
Admin
You're close. Everywhere you say "designed" you should really say "originally designed." PHP was originally designed around the templating-with-supporting-infrastructure approach because, let's not forget, when web programming became a thing in 1995 or 96, that was the best idea anyone had at the time of how to do it. Later, when the pitfalls of this approach became clear, massive changes were made to PHP (versions 5 and 5.3) so that it was easier to use in a way that it hadn't originally been designed. PHP 5 and 5.3 are a significant departure from the mash-it-all-up approach which characterizes bad PHP code.
Now, when they made 5 and 5.3, they refused to break existing functionality, so it's still possible to use PHP 5.3 to code really terrible apps, sure. All the crap code written in PHP 3 or PHP 4 still runs, just as crappily, on 5 and 5.3 (for the most part). And whether or not that backwards-compatibility is a good thing or not is sure open to debate. But please realize that no decent developer still uses it the way it was originally designed.
As for the scalability of PHP: I think I'll let Facebook talk about this one. If PHP is running the largest social networking website in the history of the world, I don't think any more really needs to be said about its scalability.
Admin
Worse would be the terminals/software used by McDonalds in Australia (or at least where I am)... They come up with "Enter PIN" about 1 second before they start accepting input. So I end up regularly either missing the first digit off, or pressing the first digit far too many times as I get frustrated and start tapping it.
Admin
I agree that sometimes you need to make the server look like it is working hard. Otherwise people will feel that the process/transaction failed.