Live data from Hacker News

Magic Lantern Is Back

magiclantern.fm

71–80 of 170 posts

Re: Magic Lantern Is Back

#71

I've been waiting for Magic Lantern for my 6D Mark II for years now, checking the homepage every 6 months or so for an update, so this is great news!

Same boat. I have a 6D Mark II since 7 years ago now, and I misguidedly was counting on ML to be released within 3 years of my purchase. But luckily, it's still a fantastic camera.

Re: Magic Lantern Is Back

#72

I've been waiting for Magic Lantern for my 6D Mark II for years now, checking the homepage every 6 months or so for an update, so this is great news!

6D2 is a nice cam, and one I happen to own. This cam is under active development. Locally I have ~FHD raw video working.

Re: Magic Lantern Is Back

#73
post #69

Earlier quoted context omitted.

I agree with some of what you're saying; some of the well known risks of working in C are because it's a small standard. But much of the undefined behaviour was deliberately made that way to support the hardware of the time - it's hard to be cross-platform on different architectures as a low-level language. C genuinely is easy to pick up. It is harder to master. And you're right, for many domains, there are better op…

> C genuinely is easy to pick up. I feel like this is a bit of an https://xkcd.com/2501/ situation. C is considered easy to pick up for the average user posting HN comments because we have the benefit of years -- the average comp sci student, who has been exposed to Javascript and Python, who might not know what "pass by reference" even means... I'm not sure they're going to be considering C easy.

I've taught several different languages to both 1st year uni students, and new joiners to a technical company, where they had no programming background.

Honestly, C seems to be one of the easier languages to teach the basics of. It's certainly easier than Java or C++, which have many more concepts.

C has some concepts that confuse the hell out of beginners, and it will let you shoot yourself in the foot very thoroughly with them (much more than say, Java). But you don't tend to encounter them till later on.

I have never said getting good at C is easy. Just that it's easy to pick up.

Re: Magic Lantern Is Back

#74
post #65

For folks who don't know what Magic Lantern is: > Magic Lantern is a free software add-on that runs from the SD/CF card and adds a host of new features to Canon EOS cameras that weren't included from the factory by Canon. It also backports new features to old Canon cameras that aren't supported anymore, and is generally just a really impressive feat of both (1) reverse engineering and (2) keeping old hardware relevan…

Funny, when i saw it uses a .fm TLD i thought it's some online radio.

Same :) I had in mind Groove Salad from soma.fm

Re: Magic Lantern Is Back

#75

Earlier quoted context omitted.

It's not firmware :) We use what is probably engineering functionality, built into the OS, to load and execute a file from disk. We run as a (mostly) normal program on the cam's normal OS. We build with: -Wall -Wextra -Werror-implicit-function-declaration -Wdouble-promotion -Winline -Wundef -Wno-unused-parameter -Wno-unused-function -Wno-format Warnings are treated as errors for release builds.

Awesome! Great work, and good luck!

Thanks, and for what it's worth, I didn't downvote you (account is too new to even do so :D ), and I agree with your main point - it's not that hard to avoid all compiler warnings if you do it from the start, and make sure it's highly visible.

You only add one at a time, so you only need to fix one at a time, and you understand what you're trying to do.

It is, however, a real bitch to fix all compiler warnings in decade old code that targets a set of undocumented hardware platforms with which you are unfamiliar. And you just updated the toolchain from gcc 5 to 12.

Re: Magic Lantern Is Back

#76
post #69

Earlier quoted context omitted.

> C genuinely is easy to pick up. I feel like this is a bit of an https://xkcd.com/2501/ situation. C is considered easy to pick up for the average user posting HN comments because we have the benefit of years -- the average comp sci student, who has been exposed to Javascript and Python, who might not know what "pass by reference" even means... I'm not sure they're going to be considering C easy.

I've taught several different languages to both 1st year uni students, and new joiners to a technical company, where they had no programming background. Honestly, C seems to be one of the easier languages to teach the basics of. It's certainly easier than Java or C++, which have many more concepts. C has some concepts that confuse the hell out of beginners, and it will let you shoot yourself in the foot very thorough…

C made a lot more sense to me after having done assembly (6502 in my case, but it probably doesn't matter). Things like passing a reference suddenly just made sense.

Re: Magic Lantern Is Back

#77

> The main thing you need is knowledge of C, which is a small language that has good tutorials. Heh, a little like saying "the main thing you need is to be able to play the violin, which is a small instrument with good tutorials".

I stand by my statement! Compare the length of the C standard to JS / ECMAScript, or C++! :) Maaaaybe I'm hiding a tradeoff around complexity vs built-in features, but volunteers can work that out themselves later on. You honestly don't need much knowledge of C to get started in some areas. The ML GUI is easy to modify if you stay within the lines. Other areas, e.g., porting a complex feature to a new camera, are muc…

I stand by my statement! Compare the number of strings a violin has to the keys on a piano! :)

Re: Magic Lantern Is Back

#78

For folks who don't know what Magic Lantern is: > Magic Lantern is a free software add-on that runs from the SD/CF card and adds a host of new features to Canon EOS cameras that weren't included from the factory by Canon. It also backports new features to old Canon cameras that aren't supported anymore, and is generally just a really impressive feat of both (1) reverse engineering and (2) keeping old hardware relevan…

I wish there are similar projects for other camera brands like Fujifilm. With abilities of ML on old Canon cameras we know there is a lot of potential in those old machines across other brands. It is also "eco" friendly approach that should be supported.

Re: Magic Lantern Is Back

#79
post #35

Around 2020, our old lead dev, a1ex, after years of hard work, left the project. The documentation was fragmentary. Nobody understood the build system. A very small number of volunteers kept things alive, but nothing worked well. Nobody had deep knowledge of Magic Lantern code. Sounds like a bit of a dick move. Part of being a lead dev is making sure you can get hit by a bus and the project continues. That means docu…

Uh, sure, maybe in a professional setting where you’re getting paid. But this was unpaid volunteer work. If, as a community, we start enforcing professional grade standards on people who are just contributing their free time to give us neat toys and tools, I kinda worry it makes the whole thing the whole thing less fun or sustainable. And if that happens, we probably stop getting these free toys altogether.

It's not like this kind of thing doesn't happen in the professional world - in fact, quite the opposite. The incentives to cut corners in a company are if anything greater than in open source, with pressure from management to meet the next deadline.

https://en.wikipedia.org/wiki/Bus_factor

Re: Magic Lantern Is Back

#80

Earlier quoted context omitted.

Awesome! Great work, and good luck!

Thanks, and for what it's worth, I didn't downvote you (account is too new to even do so :D ), and I agree with your main point - it's not that hard to avoid all compiler warnings if you do it from the start, and make sure it's highly visible. You only add one at a time, so you only need to fix one at a time, and you understand what you're trying to do. It is, however, a real bitch to fix all compiler warnings in dec…

Oh, don't worry about the downvotes. Happens every time someone starts talking about improving software Quality around here.

Unpopular topic. I talk about it anyway, as it's one of my casus belli. I can afford the dings.

BTW: I used to work for Canon's main [photography] competitor, and Magic Lantern was an example of the kind of thing I wanted them to enable, but they were not particularly open to the idea -control freaks.

Also, it's a bit "nit-picky," I know, but I feel that any software that runs on-device is "firmware," and should be held to the same standards as the OS. I know that Magic Lantern has always been good. We used to hear customers telling us how good it was, and asking us to do similar.

I think RED had something like that, as well. I wonder how that's going?

Post reply on HN