How to capture discussions off white boards [closed] - whiteboard

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 12 years ago.
Improve this question
Just like any other software development company, we use white boards a LOT. We use it for a wide range of activities — design discussions, project scheduling, brain storming, interviews etc. However, after we're done with the discussions, we end up spending a lot of time just copying the stuff for notes.
Very often we run into two issues --
We don't have sufficient space (at that point, we've to pause the discussion while someone takes notes).
Our time is up and some other team needs to use the conf room ( again, they've to wait till we're done with taking notes).
Sometimes, we end up taking snaps and take notes later.
How have other developers addressed this issue? Has anyone tried using "smart" whiteboards?
Any recommendations?

There are many ways:
Simplest is to just use a camera and take a picture of the whiteboard at critical stages
A more advanced way would be to go fully digital, using a smartboard wall type of solution (ie. big hunking display)
Cheaper solutions work by way of using the computer for the display, a normal projector, and special hardware (like pens) to detect where on the wall you're pointing or doing things
I've tried all three and by far I liked the full display the best, but it is quite expensive in some cases.
A good enough solution is the one that integrates with the computer.
The solution I tried had a suction cup rod that you hung up on the whiteboard, along one side, connected to a computer through a long USB cable.
Then you had special "pens" that were just a normal whiteboard pen with a holder around it. This holder had some kind of radio connection with the rod, and due to the length of the rod, the rod could quite accurately pinpoint the location of the pen on the whiteboard. It also made a clickety sound when you pressed the pen onto the whiteboard, so it knew when you were actually drawing with it.
This was then relayed back to the computer, so everything you drew would be captured, and could be replayed later, line by line if you wished. There was also an eraser that came with it, but it wasn't quite as accurate.
I don't remember the price of the whole setup, but apart from the normal computer, the rest came in under $1000.
The full digital smartboard I've tried was basically a 50" LCD with pens that communicated with the computer. This of course had features such as multiple pages (easily switch back and forth, bring up diagrams from earlier discussions, etc.), full replayability, could stream contents live to participants not in the same room, etc.
There's also setups that use a projector, typically mounted in the ceiling pointing down on the wall, and again communicating with a computer, using the projected display instead of a LCD display. Never tested this.
The cheapest solution is the digital camera way, and since most phones comes with adequate cameras these days you already have what you need.

I use my smartphone camera and Evernote.com ... it's a cheap solution but I'm not fully pleased with it. Like you I think there has to be a better solution.
I already used a smartboard based on a projector and sprecial pens, but I had the feeling, that it was not fully accepted by the team, they try to avoid writing on it, etc. I think it just doesn't feels right.

Related

HoloLens 2 Not Retaining Anchor Placement

we're using the HoloLens 2 and Azure world anchors to place the content within a room but when viewing the app content the anchors/room are spun 90% or 180% from where they should be. They are always square on and never diagonal, so it's like the room is being flipped.
We’re confident it's not the code, as we've successfully used it in multiple other locations, it just this one room we can't get it to work in.
To ensure it’s not our code we’ve tried rebuilding the app, as well as ensuring we’re on the latest versions of Unity and MRTK. The HoloLens 2 firmware are also up-to-date and we’ve also tried adding a delay to the code, just in case the network's too fast and it needs some latency to do it’s thing but none of this has helped.
Additionally, the anchors stick in a position for 5-20mins, then will move to a new position - so occasionally they seem to be working but even a broken clock is right twice a day!
There’s no consistency across headsets either and the anchors will be a different position for each one. The app and code is rock solid in all other locations and we've tested placing the content on another wifi network and the same wifi network but another location and all works as it should. We've tried removing all and nearby holograms to refresh the spatial map but this doesn't cure the issue. We've also tried making the room less complex as well as more complex but again this doesn't fix things and if it does it's only temporary.
Our gut feeling is it’s something out of our control, such as wifi points throwing it out of whack, or interference of some kind such as magnetic or radio etc. If it's useful or relevant we also use Photon to facilitate a shared experience across devices.
Any suggestions much appreciated!

IDs in Scratch: Cloud Variables

I have a multiplayer project which has some forever loops with checking code inside of them.
The problem is, multiple computers might process this and change crabx or craby due to lag in the variables dvotes, uvotes, lvotes, or rvotes. Only one machine should change this, though.
This can be easily solved by giving each player an ID like many people do in SQL. I would just check if the ID is 1, and that would be the "operating machine". I would then do all of these checks on that one machine. It would do things a Scratch server would do if you could program it...
The problem with this is that there is no way to detect when a player leaves the game. There is no block that is called "on exit" or "on stop button pressed". How would I go about doing this? I have seen people have a button which people click to exit, but some people will not click it/not even see it.
Thanks in advance!
Option 1
I've never been especially successful with cloud data myself, but I've heard the theory on this before:
Essentially, each player gets a "counter". Their computer then constantly increases that counter. If the counter ever stops increasing (which will be detected by the other computers, who are all looking after one another), the project will know that the user has left and one of the computers will take care of removing their ID and other data.
Obviously, this is much easier said than done. (As I said, I've never gotten complex cloud data to work well for myself, but I've seen it done successfully and explained.)
Option 2
Alternatively, you might be better off taking advantage of this cloud api created by MegaApuTurkUltra. I find that stealing from others tends to be the best way of solving problems when it comes to code. ;)

Game Center Simultaneous Turns

I'm new to iOS (although I do have a lot of C++ experience) and I am working on a turn-based card game using gamecenter. Here's the catch - The player who's turn it is is the judge and waits for all OTHER players to play a card before the turn is over. Is there a way to do this in Game Center, so all players chose what to do simultaneously and once all have done so, the judge is notified, makes a decision, and then passes priority to the next player? For example, say we start turn 1. I ask the question, #"What is your favorite color?" to all players passing them a gamestate which has that as the question and them not having answered it. Then you respond, #"Green", and our friend Steve responds #"Blue". I then decide which is better, give one of you a point, and then whoever I gave the point becomes the new judge. My question is, how do I allow all players to respond simultaneously, rather than sequentially. I know that, worst case, I could sequentially loop around through players until it comes back to me, then judge it, but this would slow down my game and make it less fun. Is there a way to do this simultaneously?
I agree with NSSplendid about the API for turnbased games requiring sequential turns. The only truly simultaneous method would be using the real-time matches from GKMatch, and that isn't really an option for games with more than a few players.
However, the sequential version could be improved slightly by using a programmatic approach to game center instead of the default view controller.
Ending a turn fires off a push notification through Game Center, and by using GKTurnBasedEventHandler's method handleTurnEventForMatch:didBecomeActive:, you can receive that in your app. When the judge asks the question, have the users display that as part of the game, and have their responses stored locally until their turn. Once it becomes a given player's turn, they receive the notification, even with the app in the background.
In the method, it can check the locally stored answer and end the turn immediately, if they've answered. If they haven't, send the turn once the answer is complete. It's not truly simultaneous, but the judge gets the answers as soon as everyone has responded, without the players having to wait for one player to finish before they can enter their own answers.
The players won't get the notification that the judge has ended their turn until they open the app, but they can't see the question anyways without doing that. Another approach to this, though slightly wasteful, is after the judge ends their turn with their question, is to do a runthrough of all the players ending their turn as soon as they get the "Your turn" notification, so everyone knows a question has been asked, then doing the steps from the previous two paragraphs.
The iOS API is built around the model of sequential turns. While the workaround you mentioned will work, there is no way to get GC to do real concurrent turns. Sorry ):

imitate user activity / prevent automatic afk detection

Is there a way to simulate user activity on desktop on Windows? This is the situation: A friend of mine works from his home. His company recently decided to provide their employees with a communication tool which they have to keep running in the background. Apart from its main functionality it also has a very intimidating side effect: It tracks user activity. This means that the programm monitors keystrokes and mouse movements. If a user is idle for say 5 minutes or something, an icon next to his name indicates his idle status to all other users, much similar to instant messengers like skype for example. Now while this may be useful in IM programms, we both find it a bit disturbing in a work related context, for obvious reasons.
Doing some google search only gave me shareware links or cheating tools for MMORPGs. But maybe I searched for the wrong terms. My first guess would have been to have a small process running in the background which imitates keystrokes or mouse movement in regular intervals. But maybe there is another way to deal with this. (Oh, and complaining about lack of privacy to the employer is not an option ;) Also please note that I don't want to promote laziness or question an employer's rights over his employees.)
Any comments and help appreaciated. Thanks!
There is an easy way to make cursor move in C++.
its something like:
pos.X = 10;
pos.Y = 10;
I dont know if this is the best way, but it works.
If you dont want to program your own program, Im sure there are a lot of programs on the internet. You just need to google :) .

iPhone and Vertex Buffer Objects

I've just started playing around with opengl es on the iphone the past couple of weeks and i'm looking at refactoring some of my code to use Vertex Buffer Objects(VBO). Before I do though I would like to make sure it'll be worth it. The problem is that afaik the only reason you create VBO's is to shift a chunk of data onto the graphics card so that it doesn't need to be retrieved from system ram when it's used. The iPhone however does not have any dedicated ram that I'm aware of so i'm struggling to see why I would benefit at all from using VBO's. I have seen talk around the internet with conflicting opinions and apple certainly want dev's to use it so there's probably still a reason to use them but just wanted to see if anyone on SO had an opinion to add.
I saw no performance improvement on an iPhone 3G. I moved a bunch of stuff to VBOs, but eventually backed it out as it made it more difficult for me to pursue other performance gains. It's not the quick 25% performance increase that I was hoping for.
I've read somewhere that it can make a difference on the newer hardware (3GS), but I don't have references to back that up.
It depends. (sorry).
Rob didn't see an improvement for his setup, but here is an interesting post that did see a large improvement.
The main reason to existence of VBO's is the presence of static data on 3D models. The first bottleneck you encounter is the slowness of copying data to video memory (by using the unavailable glBegin/glEnd block or glVertexPointer, glBufferData and friends).
Let's imagine the old "flying toaster" screensaver. All toasts are static (changing only the position) - why waste resources copying them every frame from CPU's memory to GPU's? Copy it once with buffers and draw it with a single command. And, depending on how you do animations, even the animated toasters can be described in a static fashion.
My first 2D game I started without VBOs. When I changed to VBOs, no difference (like Rob). But, when I refactored to use more static buffers, FPS gone from 20 to 40. Since my goal was to reach 30, I was satisfied. I had some ideas to refactor even more, leaving everything static, but I don't have time now (game is on review, next one to come).