michaelgreen
You do get access to a lot of the core sensors on the device but the inconsistencies on iOS just really make life a lot harder. Hopefully this will change over the next year but I'm not sure how quickly it will happen. So basically yes, you should build PWAs but until apple gets completely on board you can't really leverage them to their full extent like you can with chrome on android.
I would checkout: https://egpu.io/forums/mac-setup/wip-nvidia-egpu-support-for...
A lot of people have put in a lot of work to make it as easy as possible to setup. I would just make sure you setup things one at a time and don't immediately jump to trying to get TF or pytorch to work after installing the drivers/ following any sort of guide. Verify your Cuda installation first by building the sample programs and running them. (see http://docs.nvidia.com/cuda/cuda-installation-guide-mac-os-x...)
Other than that maybe checkout: https://gist.github.com/jganzabal/8e59e3b0f59642dd0b5f2e4de0... https://gist.github.com/smitshilu/53cf9ff0fd6cdb64cca69a7e28...
The main thing is just getting the GPU drivers setup, after that installing tensorflow requires some modifications to the source (relatively trivial find and replace), and I don't think you have to do anything special for the latest version of pytorch.
Other tips:
1. Make sure you're using a thunderbolt 3 cable with whatever egpu you have, other cables will not work even if they're usb c. (USB 3.1 != Thunderbolt 3 != USB C) Read about the differences.
2. I would recommend the AKITO Node enclosure as it seems like most people use it and the community is really small already so if you aren't it might be more difficult to debug issues, but I wouldn't say you couldn't use something else.
3. You'll want to have a docker container that has the CPU version of tensorflow/whatever so you can use that when you don't have the GPU readily available as tensorflow won't work if you installed it with GPU support and your GPU isn't there.
4. If you're trying to use Nvidia-Docker I'm not sure if anyone has gotten that to work on mac because device binding isn't supported on mac for docker. You might be able to get this to work by modifying the docker VM but I'm not sure.
It doesn't let you hot plug your eGPU into your computer (you have to restart for it to work) but for officially supported eGPUs you're now able to do that.
I've trained various models using a Titan XP and it's so awesome to be able to maintain the portability of your laptop and still get all of that power. A large benefit is also not having to move training data around between servers and other machines if you have it on an external drive or just on your laptop.
After you get everything up and running there isn't that much maintenance or anything you have to do regularly to keep it working. The speedup is incredible and it was definitely worth it for me personally, however it's not a walk in the park to get it set up initially.
Also it seems different from more traditional hyperparameter optimization because it makes novel cells. So the structure of the network isn't limited to our existing library of layers/cells.
https://arxiv.org/abs/1611.01578 https://youtu.be/HcStlHGpjN8?t=2073
Why doesn't this just move the optimization problem? Aren't you now just optimizing your DeepRL network rather than the network you're trying to optimize?
However as the writer of the article pointed out often times you can't see when other people are improving your ability to do work whether that's through writing more documentation, improving some internal infrastructure, or other often invisible things that can drastically improve your life as an engineer.
I think an effective approach would be through time tracking (i.e: writeup on how you spent your time for the day) in conjunction with some analysis on how the time you spend on certain things correlates with what other engineers are doing. This of course would rely on everyone being detailed in their writeups and the analysis still might not catch certain things because it's difficult to write down exactly how you spent your time. Perhaps you could only write down the three most difficult/annoying problems you ran into and just track that.
I remember reading about some company that is trying to make this easier by tracking computer use and creating graphs of how people interact within their organization and how that changes over time but that doesn't seem like it would work everywhere.
I don't know if there is a way to truly quantify teamwork or organizational impact. I think the important thing is to encourage your organization to communicate more: talk about what you're doing, why you're doing it, and how it helps others within your organization. If your organization is fairly big write about it and share your writeup internally. Train people within your organization to speak up if they feel they aren't being appreciated for the impact they made.
Ultimately I think it's an extremely hard problem because it stems from the question of what having a positive impact means. The answer to that can branch off into millions of different small tasks that could be totally unique to a subset of people within your org.
----
The best you can do is:
* Measure what you can.
* Know that's not the entire picture and it never will be.
After that try to create a culture that:
1. Speaks up about their own impact
2. Shares the impact of others' work, especially of those who might not speak out much
3. Is openly appreciative of and encourages 1 and 2.