LIDAR burnout; standards, specifications, or even guidelines for thermal damage due to infrared lasers?

The BBC News article Driverless car laser ruined camera describes a situation where a particularly powerful infrared laser from the LIDAR of a prototype car at the CES show damaged the sensor of a photogrpher’s camera.

Question: Are there any standards, specifications, or even guidelines anywhere in the sensor or camera manufacturing industries for thermal damage due to intense sources of light?

  • If a LIDAR manufacturer wanted to be responsible and build a system that they could say probably will not damage security cameras and traffic cameras up and down the street, is there any place they could turn for information or limits on laser emission? Perhaps a maximum radiance value in each of several wavelength ranges?

  • Or if a camera manufacturer wanted to be responsible and build a camera that they could say probably will not be damaged by car, robot, or other LIDAR systems?

  • Or if a LIDAR were part of a display of another product (like a car or robot) but it may not be obvious to every member of the public that there were IR lasers involved, and the display owners wanted to know what laser level might warrant them including a warning about cameras?

So far, answers to the question Are there industry standards or specs for image sensor resistance to damage from intense light? Ask Question are basically “no”, but outdoor photography is so ubiquitous that there’s plenty of experience.

Now however, eye-level infrared laser beams are something new and different, and these are invisible and so one doesn’t necessarily know one is photographing a laser until the dot shows up in the photo.

If I understand correctly these LIDAR systems use wavelengths that are absorbed in the front of the eye and so never pass through the lens and get focused to a small spot on the retina. An IR-blocking filter on the lens can mitigate the problem, but an IR-blocking filter on the sensor, near the focus, can melt and fail for the obvious reason that it absorbs the power which is now focused to a small spot.

enter image description here

Jit Ray Chowdhury/BBC

The lidar system on the top of the demonstration car

enter image description here

Jit Ray Chowdhury/BBC

The purple dots and lines on this photo of the Stratosphere hotel in Las Vegas show the damage…

The article goes on to explain:

Lidar works in a similar way to radar and sonar, using lasers rather than radio or soundwaves, explained Zeina Nazer, a postgraduate researcher at the University of Southampton specialising in driverless car technology.

“Powerful lasers can damage cameras,” she said.

“Camera sensors are, in general, more susceptible to damage than the human eye from lasers. Consumers are usually warned never to point a camera directly at laser emitters during a laser show.”

Ms Nazer added that for cameras to be immune to high power laser beams, they need an optical filter that cuts out infrared which is invisible to humans. However, it can affect night vision, when infrared can be an advantage.

AEye is known for its lidar units with much longer range than their competitors, ranging 1km compared to 200m or 300m,” she said.

“In my opinion, AEye should not use their powerful fibre laser during shows.”

What guidelines can I follow to know if I can trust a software editor?

At work or at home, I often find some useful piece of software. Sometimes I may find it on a forum, mentioned on a video, or by talking to a colleague.

But how do I know if the editor of the software I install can be trusted ?

To clarify, I am not asking if I can be sure that there are no security issues within the software provided. I am asking how I may check the reputation of the editor in order to prevent the case where the software I install may just be a free tool they provide as an excuse to get a backdoor into my computer, to install a keylogger or basically anything malicious on purpose.

What are the best practices, or guidelines, to having a web form auto-save and manually save?

There are many ways in which a web form is made to auto-save and manually save; I’m wondering what would be the best practices to do so.

Form is a web application form, and I want to save user values for the purpose of tracking progress and not losing their work if they take a break or want to resume working on it later. I want them to also be able to click the save button manually. I want them to be able to click a “submit” button to mark it as submitted and asynchronously send it to the database, once all the saves have validated that the form is completed successfully.

Here are some of my concerns (some are technical and others are not):

  • How often should I auto-save the form? 30 seconds? A minute? More? Less? What determines the best interval to save?
  • Should I save onBlur of every form element, or should I do it onFocusOut at the form?
  • How do I save while user is still filling out a textArea without leaving the focus, yet? How do Gmail and StackExchange do it?
  • I’ve read that I could save the form locally, but when should I asynchronously submit it to the database as opposed to keep it local? What if the user leaves the locally saved form and it still hasn’t been submitted to the database? What’s the best failsafe for crashing?
  • When should I notify the user that the form is saved like when Gmail does it?
  • Is it bad practice to also include a save button in addition to having a auto-save feature?
  • Should anything change when filling out the form on mobile as opposed to desktop?
  • Is it possible to make the form 100% capable of not losing progress, or is the user bound to lose some data at some point?

Anything else I should be aware of, keep into consideration, or try to implement in order to make the experience more convenient for the user?

If there are any good sources other than Goodbye, Ctrl-S and What’s the rationale behind Google’s “no save” approach? for me to read on, please let me know.

Science/Evidence based guidelines on number of character for alert messages?

I’m designing a design system for multiple web-based app to manage customer license and account. I’m trying to set a character limit for these messages.

The company has culture of being verbose, and I’m having a hard time trying to convince on reducing text on alerts. Using the argument of being clean like Apple / Google guidelines, mobile first, doesn’t work. I need to dig deeper and find something more rational like backed by academia or experts in the field.

Alerts would be things like this:

Is there any study on the maximum length of characters for error or warning messages for an app?

What’s the relation between a Security Framework & Standards, Guidelines, Procedures and Policies?

I’m currently writing a paper about security standards. Therefore several terms have to be defined before I can actually start. The problem is that in every resource the term “Framework” is somehow connected to the terms “Standard”, “Guideline”, “Procedure” and “Policy”. However, I fail to find a general definition for the term, since every resource defines it in a different way. E.g

  • “A Framework is an assembly of standards, guidelines and best practices, which helps organizations at managing their assets and reaching their goals”
  • “An information security framework is a series of documented processes that are used to define policies and procedures around the implementation and ongoing management of information security controls in an enterprise environment”
  • “A Framework is a general guideline that an organization can adopt.”
  • “A framework is at best, a frame that can be used as a practice.”

So, obviously people have completely different definitions for a framework. But which one is correct? Any experts here that can give me a short explanation?

Which UX guidelines exist for mobile app performance?

I’m doing the UX for an app that communicates with bluetooth devices. Unfortunately, all bluetooth traffic is routed through our cloud backend which occasionally makes the app slow. To deal with this I would like to define some performance goals, for example “Response time for bluetooth actions should be less than 1000ms”.

Instead of making up arbitrary performance goals myself I would like to base them on existing research or best practises. This would make it much easier for me to argue for spending time on improving performance.

  • For web pages I found a model by google called RAIL that could perhaps be applicable in a mobile app too.

  • I also found an article by Jacob Nielsen that discusses response time limits in general.

Are there any other UX guidelines, models or best practices that concerns performance in mobile apps?

What are good guidelines and principles for designing and balancing superpower stunts in FATE Core?

I want to make a stronger focus on the F in FATE1 in my future campaigns, and that means I’m expecting said campaigns to involve what I usually see broadly referred to as special or superhuman abilities: magical spells, psionics, cyberware, superhero abilities, cinematic mutations and even mundane animal traits (the site doesn’t want me to use more than 5 tags). I have encountered different hacks for handling those, but so far, paradoxically, the approach in the Core book (p. 279-280) seemed to be the simplest and most generally applicable (and subjectively most likeable to me).

Now, the last page says ‘this is art, not science’ about the design of new stunts, but even in arts there are many do’s and do not’s.

Thus I’m asking: what are good guidelines, principles and best practices for designing and balancing superpower Stunts?

Some points refining the answers I seek:

  • These don’t necessarily need to be just superhero powers. Cyberware, psionics, magic, or even some mundane animal abilities fill the niche of ‘can do what humans cannot’ too. Thus, it’s best not to be limited to any one setting or explanation of why they work.

  • I’m most interested in qualitative Stunts that enable doing things that are normally not doable at all. Flight, insubstantiality, ability to Shoot without a weapon, ability to breathe water (in addition to air) indefinitely.

  • Evaluating whether a stunt’s effect should be FP-powered, require a roll, or neither, and what’s a fair tradeoff for changing between these categories.

  • Generally operating in a context where not all PCs and NPCs necessarily possess as many, or in fact any such powers. E.g. a Babylon 5 campaign where 1-2 PCs are telepaths and the rest aren’t; a Ghost in the Shell campaign where one PC refused to install cybernetics and thus lacks the special abilities of other PCs; a mixed Star Wars party with a Jedi/Sith, a combat droid with some odd integral modules, and a few regular folks like smugglers or diplomats. So the guidelines should produce special ability Stunts that are neither better nor worse than mundane Stunts, and no better nor worse than just hoarding Refresh.

Answers that are not helpful:

  • Already known: Being equal to one Refresh but also being more narrowly applicable, a quantitative (+2 effect) Stunt should on average get two uses per minor milestone.

  • Already known: Stunts which allow using one skill instead of another in a narrow circumstance/context/etc.

  • Not constructive: “Just use what works best for your table”. We are a table and we want to know the principles to estimate what would work best, and what should never be even tried etc. (In fact, a big reason for joining RPGSE for me was avoiding this sort of non-answer.)

  • Outside the scope of the question: “Just use Aspect Permissions instead”; not only are Aspect Permissions worthy of a separate question, but also this answer says nothing on the topic of actually designing Stunts.

1 FATE = Fantastic Adventures in Tabletop Entertainment.

How to create a decent set of C++ guidelines?

I'm in a group that is responsible to renew the company guidelines for C++ code. We have recently upgraded our entire legacy codebase from C++98 to C++11, and currently we are moving to C++14.

I find it difficult to find the optimal approach for these guidelines. What we have agreed on so far is to create guidelines for how the code should be formatted (syntax, naming, etc. ), and the file and folder structure of our code. This is straight-forward, necessary for consistency, and easy to…

How to create a decent set of C++ guidelines?