Well this is depressing. I was always meaning to install ML, now I'm not sure I can trust the developer for doing something so stupid and not feeling and contrition for it.
Is al3x also g3gg0?
so a warning to everyone being pranked yesterday:
you are not prepared for serious shooting with magic
lantern, if this was a real problem to you.
why?
if you use ML for business make sure a failure, no matter if serious issues or not so serious (like yesterday) wont get you in trouble!
- take ML-free backup-cards with you
- make yourself confident with rescue procedures and how to temporary disable ML
- ML, especially "latest" versions can introduce troublesome behavior
yes, its cool that ML is being used in a lot of serious stuff. we really love that.
but we expect users to be prepared for the moment when ML is going nuts for some reason.
this day will come.
If anything, this gives you good reasons to trust these guys. Many people have installed and are relying on ML without reading the warranty warnings. At least they're pushing you to use good practices that stand you in good stead with any other dev and their product out there.
I'm not sure how enforceable a warranty disclaimer is when it comes to software that maliciously alerts the user to a permanent and irrecoverable hardware error.
The rationale given above is bupkis: "don't use us professionally because shit happens and good practices etc". The user in the story knew how to roll back and did so, and still wasted a lot of time and effort trying to hunt down the bug - being helpful, like an ideal user is. As an explanation, it's a total cop-out.
An April Fool's prank should be quickly evident to the victim, not make them spend hours wasting their time. Especially when the victims are strangers.
Not really a question about whether I trust other devs. It's more that these devs admitted to causing harm, and seem to think fooling their users is a good idea. Then when called out on it, they say, "people need to relax, just a joke bro, better be careful next time!" instead of just owning up to it and hopefully move on.
Installing firmware onto thousand dollar machines is stressful enough, they shouldn't be "taught" a lesson just because the developers thought they should.
It's almost like every notable april fool's joke in history.
There's always the guys that will say that lighting a bunch of tires on top of a mountain to fake a volcano eruption was irresponsible, but then again, these are the things we talk about decades later.
At first I thought this was blown out of proportion, but the developer's comments are infuriating. When an issue was filed, the response was "can you post a video?" rather than "sorry, it's a joke – roll back for a fix". Even the official explanation is just the developer complaining about users being frustrated: https://bitbucket.org/hudson/magic-lantern/issue/2235/5dmk2-...
Magic Lantern is designed to be as simple as possible - you stick a file on a memory card and that's it. ML is 'marketed' as something that 'just works'. The developer needs to understand that the people who'll use it are, essentially, IT newbies who won't always understand the need for backups, understand what a roll back is, and won't follow instructions. That means they won't necessarily understand the fix, and they will believe a message that says their camera is bricked.
None of that means he shouldn't have played a joke on the users, but it definitely means he ought to have thought it through more. And, as you say, he should have had a much better response to people's understandably somewhat panicked reaction.
Definitely not a classy move; perhaps it would've been better to do it immediately on boot-up, with an error message like FOOLS_FAULT, and after a few seconds pop up a dialog that makes the "error" go away.
"Your camera is now bricked" isn't exactly the message I'd like to send to my users.
While, as a developer, I love adding some easter eggs, I think this kind of joke is not funny and tarnishes the open source community reputation.
An easter egg should make the user smiles and make him/her feels good and that the developer cares about the software. That one is just mean.
While I can understand the developer making an error in not thinking it through and making the joke, the handling of the case on the forum should have been "I make a stupid joke, sorry, I'll make a fix right away, just rollback for now".
To the people saying it's free software and the user is entitled to nothing, I'll just ask: "Is it the world you want?" a world where there is no trust and only the fear of being sued for money?
I thought that looked like a real April Fool's joke for once, unlike the loads of mildly amusing news stories that have become the standard on April 1st. The author could have told it straight away on the forum though, instead of going further and asking for a video.
"yes, its cool that ML is being used in a lot of serious stuff. we really love that.
but we expect users to be prepared for the moment when ML is going nuts for some reason.
this day will come."
In some way, it's a lesson to not uncritically install whatever on your own devices.
I install custom firmware on my Wi-Fi routers, my smartphone etc., never really thought about how it would affect me if it were to get bricked in the process.
No, no one should be surprised that a nightly build had problems.
Yes, users should know what they are getting into.
No, the developer has no obligation to be held to a higher standard of reliability.
Yes, the developer can really do whatever they want.
With all that said, can we at least agree that this shows extremely poor judgment from an engineering and product sense? Not only is this a terrible way to achieve user trust, but it also doesn't make any users feel good. As a user, why would I want to use a product that wants to make a fool out of me and throw wrenches in a core feature for chuckles?
I remember a similar April's fools joke at one of my old workplace. This was the late 80s. Well, one morning, when I booted up my computer, it echoed out a message like "your computer has a virus" or something similar. The message was also showing up on a number of other computers. It caused panic and confusion in my workplace. It was a small company and computer knowledge was lacking. We shut all the computer off and called in some computer specialist to checkout the problem. It turned out that someone has modified autoexec.bat to echo the string out as an April's fools joke. Well, the manager was not happy and it caused the company a bit of money to recover. I think the person who did it was given a dismissal warning.
A good natured "prank" is something you play on your friends, something they will laugh about instantly after it happened. When you make other people's misery the butt of your joke you're not being funny you're just being an asshole. It's little different from what a bully does.
tm_mon and tm_wday are 0-based because the expectation was you'll probably be using than as an index in a lookup table to get a month name (e.g., "Jan", "Feb", ...) or day name (e.g., "Sun", "Mon", ...).
For day of month, we don't have special names for them. We just use the day number. So tm_mday directly contains the day number.
This is cruelty, not humor. Look at this from the perspective of a different profession:
Why is it a problem if I'm a doctor and I put a non-lethal poison into every few flu shuts on April 1st? Because April Fools.
This is how people who don't program view this sort of thing. You can say that you feel sorry for them, but, in reality, you lose, because they'll never trust you again. And they shouldn't.
It's interesting that the author mentions only one of the the error codes (0x000000aa) but not 0xdeadbeef, which was an obvious giveaway to me that this isn't a real error.
You need SOME code to display debug info or at least a message when the processor encounters an unrecoverable exception. Otherwise all crashes would just freeze the system.
The first line on ML: "Magic Lantern is a free firmware addon for Canon EOS DSLR cameras that adds a host of features to assist photographers and videographers."
Read it again: it is free. If you really need QoS, pay someone to develop and code review the firmware. I am not being a troll, some people just have so much self-entitlement on something that is free.
Well; it really depends on your jurisdiction, but you should know that there is such a thing as consumer protection and tort liability --yes, even for things you get for free, like FOSS. See for instance [1,2].
Also, in the specific case of FOSS, this kind of jackass-ery might soon come to an end anyway if/when the EU and UK follows through with their (relatively) recent moves to introduce stronger software liability provisions (eg [3]).
All these articles only mentioned the possibility of liability.
[1] most probably translated from German, and I cannot really understand what the translated text means, so I have no comment.
[2]: It doesn't say for sure one will be liable "it is difficult to determine with any certainty: (1) whether open source software licenses will be enforceable, (2) whether open source software copyright will be valid, or (3) whether open source software licenses will subject developers to tort liability."
[3] is more on vendor, which quite specifically on transaction that carries monetary value. It is debatable if one still be regarded as vendor even if he doesn't sell stuff. I will give the article benefit of doubt.
Truth be told, the first successful litigation basically will turn off most contributors: no one can be sure their codes are totally bug-free. Even if that person totally wants to do good.
> some people just have so much self-entitlement on something that is free
Self-entitlement would be expecting personal customer support. Finding out the firmware is buggy BY DESIGN is reason would seem to be a perfectly good reason to dismiss the firmware.
Is al3x also g3gg0?
http://www.magiclantern.fm/forum/index.php?topic=14850.msg14...There is also a picture in that thread (scroll up).