Please create an account to participate in the Slashdot moderation system


Forgot your password?

Submission The sad state of open IPCameras -> 2

criticalmess writes: I'm about to give up on any decent hardware to be found to roll my own web-based camera setup around the house and office — and thought that the nerds and experts at /. would be my last resource I could pull out.
Having bought multiple IPCamera (DLink, Abus, Axis, Foscam, TP-Link, ...) and always getting the "requires DirectX" treatment, I'm wondering if there are any open and affordable IPCams out there? I've been lookint at BlueCherry and their kickstarter campaign to create a complete opensource hardware solution (, I've been looking at Zavio ( as they seem to offer the streams in an open enough format while not breaking the bank on the hardware. Anything else I should be looking at?

I can't for the love of it understand why most of these hardware companies require you to run DirectX — anybody care to enlighten the crowd?

Should be simple enough really: hardware captures images, a small embedded webserver transforms this into an RTSP stream or HTTP stream, maybe on h264 or similar — done.

Link to Original Source

Comment Where do I send my resume? (Score 1) 270

I'm all set for the interview!

000030 AUTHOR. ME
000100 01 FIZZ PIC X(4) VALUE 'Fizz'.
000101 01 BUZZ PIC X(4) VALUE 'Buzz'.
000102 01 N PIC 9(3) VALUE ZERO.
000103 01 X PIC 9(2) VALUE ZERO.
000104 01 Y PIC 9(1) VALUE ZERO.
000105 01 Z PIC 9(1) VALUE ZERO.
000150 PERFORM UNTIL N = 100
000160 COMPUTE N = N + 1
000180 IF Y = 0 THEN
000200 END-IF
000220 IF Z = 0 THEN
000240 END-IF
000250 IF (Z > 0) AND (Y > 0) THEN
000270 END-IF
000280 DISPLAY ' '
000300 STOP RUN.

Comment Re:Power Consumption (Score 2) 75

Thanks for the link. I knew power would not be a pretty issue, but the other one that came to mind was whether you could count on instruction timing. That article confirms that you can't. The WS2811 and other such chips expect pretty tight timing. Simple to do with Arduino, just use the asm macro to directly do a string of NOP and then bit operators directly on the port register you've connected your data line to.

Now if you're doing something that you need a beast like this for, you can hook up an Arduino or two and just use i2c to communicate. (Then again, in many cases a Due would be good enough).

Submission Could's H-1B Advocacy Discourage CS Study?

theodp writes: is certainly sending out mixed signals to visitors to its What's Wrong With This Picture? page. Next to an infographic that promises a bottomless-cup-of-Computer-Science-jobs to U.S. kids is a Twitter feed with a Tweet lamenting a cap on H-1B visas that prevents international job-seekers from filling these jobs. In the linked-to article, TechCrunch reports that the head of — the PAC founded by supporters and "CS teachers" Mark Zuckerberg and Bill Gates — "lambasted current law regarding the cap structure of [H-1B] high-skill visas in an email to TechCrunch, calling the current set of regulations 'dysfunctional.' He went on to state that it is 'absolutely critical that House Republicans take action on immigration reform now to do right by American families and boost the American economy.'" Elsewhere on its site, suggests H-1B workers as the answer to filling 18,000 STEM jobs in South Dakota (due to the state's inability to produce a skilled workforce). It's unclear if some of those jobs are also counted as job opportunities for SD kids in's infographic. So, in the long run, could's advocacy for more H-1B visas, while it aligns nicely with (common supporters of both organizations), actually wind up discouraging CS study by U.S. kids?

Comment Re: PHB's strike again (Score 2, Interesting) 207

No, it wasn't habit. It was political pork. There was a Florida company read and willing to build the SRBs as a single unit. Simpler and vastly safer.

But that didn't spread the pork far enough. Thus Thiokol got the contract and a Utah congressman got to brag about how he brought home the bacon. The result: the SRBs needed to be segmented and seven people got to die.

Comment Zero index never bothered me. (Score 1) 295

I never really questioned it. Mainly because I started with Basic, but quickly moved into 6502 assembler on the C64. Really stupid example that creates a 30 element array on the zero page with the set [1, 4, 7, 10, .....]

        Array = $00

        LDX #$01
        LDY #$00
        STX Array,Y
        CPY #$1E
        BNE loop

If I started my index in the Y register with 1 my first element would have been placed in memory location $01 and the array would have been 29 elements long. Instead I start it with 0 and my array goes in $00 through $1D and consists of 30 elements. It had always been my assumption that 0 indexed arrays were a carry over from this.

There's no reason that a high level language can't use indexes that start with 1. It just feels really strange to me using a language that does.

Comment Re:uh, yeah... (Score 1) 105

It gets taxed via AMT (alternative minimum tax) in special cases. If your company gives you ISO stock options (as my wife's company did), you have a strike price and a vesting period. Once your stock option vests and you exercise it, you realize an on paper gain in wealth of current value of the stock less the strike price. You owe the AMT on this paper gain, which is treated as a pre-payment of any cap gains you'll owe when you sell it. So you hold it a year and then sell for cap gains long. If cap gains taxes are more than what you paid in AMT, you pay the difference. If it's less, you don't get a refund for a year. Since we're not rich, we did a straight sale when the option vested and paid income tax. :P

It would have been more money in the long run if we'd had the money to do it the right way. We could have swung the strike price, but the AMT would have killed us. Plus we just decided to go with easy as the headache for the difference was just not something we'd want to deal with anyways.

Comment Re:No, you can't use it. (Score 3, Informative) 120

From their terms of use:
"We claim no intellectual property rights over the material you provide to the Service. Your profile and materials uploaded remain yours. However, by setting your pages to be viewed publicly, you agree to allow others to view your Content. By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories."

So yes you can view and fork, but you don't get clone rights. The instant you do that, you infringe the copyright. So if you have no license that allows you to put out on your machine and use it, how useful is it? Until copyright or the Berne convention are changed, this is the world we live in.

Comment Re:Wow, if you believe this guy (Score 5, Insightful) 78

Yeah, my first thought was, "giant douche tries to explain why he isn't a turd sandwich."

Regarding the 'thousands of patents claim ours as prior art'.... Yeah, it's so broad that to do just about anything near audio and the web, you'd need to cite it too. That's become the main problem. They claim not an invention, but the entire domain of the invention and several others at the same time.

Seeing the work load that patent examiners are under, that the examiners do not appear to be skilled in the modern art of computers, the fact that granting patents is the way for the USPTO to get its funding, that it's just cheaper to pay the troll than to try to get a re-examination or go to court, and companies that are more than willing to just keep amending a patent until the examiner caves..... The system is just broken and it's beginning to seem easier to throw the whole stinking pile out and start again.

Comment Re:Ah, Twitter... (Score 1) 33

The only thing in 4.0 that I could agree with you on is that 4.0 added a face detection API (in fact it was the only API change in android.hardware for 4.0). As far as a wrapper being not fun/onerous.... That might confuse a Java 101 student and yeah, wrappers aren't glitzy, but you do it everywhere. Any time you need to account for hardware or OS options you have to do something (this goes for iOS and Android). In this case you do everything you would have done and if the version is less than 4.0 don't do the face detection or offer the option. Someone above claimed 3.0 made marked improvements in the Camera API. The ability to use an OpenGL ES surface instead of a SurfaceHolder for the preview window is certainly nice, but... If you want to use it with fallback support it is as simple as detect version of Android and inflate the SurfaceHolder layout for 2.x devices or the SurfaceTexture layout for 3.x+ devices. SurfaceTexture is where you need to add all sorts of code actually displaying the preview. The SurfaceHolder version doesn't need any code.

Hey it's their app and I'm not saying that they shouldn't go ahead and make their own decisions on support. I will say that for what this app does, the no 2.x/3.x support makes me question the skill of the team behind this. Could they be planning to go back and add back support? Sure, but it's much easier to just bake it in from the beginning.

Comment Re:Ah, Twitter... (Score 4, Informative) 33

Almost the point I was going to make. I'd hate to see the code behind this. First of all, if you are supporting the rear camera, the front camera support is all of 5 minutes (button in the UI, and passing the constant for front or rear camera based on the button state).

Then I read that they are only supporting 4.0+. Seriously? You can do everything they're doing there with the support jar and include all the way back to 2.0. If you want to do it nicely just pull in ActionBarSherlock and PageIndicator.

Comment Re:sweet (Score 1) 152

How in the hell do you figure that? Fork has fuck all to do with the definition of multi-tasking, true or otherwise. Fork is a C language construct that has been carried up into other languages that is only one way to spawn a new process. But even if it were the definition, I can call fork from Android JNI or NDK code (severely frowned on, but doable).

In android I can spawn services and use broadcast receivers to do exactly the same thing as fork()ing a child and communicating across a pipe. Same semantic, different implementation.

Multi-tasking is the ability of the OS to run more than one process at a time. Whether it is preemptive or cooperative, time slicing on a single CPU or multiple CPUs. If the OS allows multiple processes to be launched, regardless of whether those processes can fork() children, it is a truly multi-tasking OS.

Reality must take precedence over public relations, for Mother Nature cannot be fooled. -- R.P. Feynman