Domain: stackoverflow.com
Stories and comments across the archive that link to stackoverflow.com.
Comments · 921
-
Re:Dumbest Decision Ever
Actually, it's more like a synthesis of old and new. For example, take Silverlight - the new XAML-based UI framework to Metro is pretty much it, except rewritten in native code - but, thanks to WinRT language projection magic, still accessible from
.NET as if it were managed. For simple Silverlight apps, you can often get away literally with just renaming a bunch of namespaces in your "using" statements, the rest just works. On the other hand, now you can also use it from C++ (also with XAML, data bindings etc - only there it has to do some codegen since there's no reflection), getting a pure native app with no VM or GC.This is a bit outdated now (since it was written six months ago on then-current beta version), but the overall picture is still correct.
-
Re:Oh, that's bullshit. There's plenty of choices
http://stackoverflow.com/questions/4891642/interpreter-for-the-iphone
Never mind. Now that I read that more carefully, it doesn't apply here.
-
How to indicate missing information and avoid null
-
Re:is google any different?
Not that this is what they are actually using for their ads, but they can totally associate your location to your IP. Google cars gather wifi data. This associates an access point to physical locations. Then once you use something like the HTML5 geolocation API, the browser asks Google what your location is by sending it nearby access points to Google who in turn respond with a location.
-
Re:ObjC sucks
You shouldn't do [title release]. It should be self.title=nil.
There's a school of thought that you should always refer directly to the ivar in a release. The reason is that the property could cause other side effects, since it's basically a method call. I had a bug in an EncrypteFile class where it would write out the file when a string was changed. Because updating the file was done in the property setter....well, it didn't work so well.
Of course, ARC fixes the issue completely.
-
Re:Let's just say
Google's insistence of reimplementing every single speciallized software technology that we already have, as an HTTP service running on a generalized web platform, may be technically interesting and very clever, but hardly innovating.
Hmm, this is a bit off topic, no? OOoh, n/m... You mean like LDAP, rsync and/or FTP?
Herp! Hey guys Google drive's JavaScript authentication API is broken, so just MANUALLY craft a base64 encoded multipart form post with JavaScript and post that to an iframe proxy to do an upload! Derp!
And You Think I'm Joking! -
Re:Monumental failure.
You meant "Java" and "Objective C", right?
No. I meant C++. iOS and Android requires a bit of Objective-C and Java respectively, but you can write all your heavy lifting code in C++. For instance, you can write a whole C++ library and reference it in your Objective-C code, through Objective-C++.
So you can essentially share quite a bit of code between iOS and Android. As an example, OpenSceneGraph (openscenegraph.org) runs on both iOS and Android, and that is a C++ based library. I wish I had specified this in my parent post so I didn't have to clarify this.
Also, I must admit to genuine confusion (I'm not saying you're wrong here, I'm asking...): If WP7 is
.NET based, can't you use a C++ compiler that compiles to the CLR? Or have they prevented that in some way?Only Phone Manufacturers are allowed to write unmanaged code for WP7 so that excludes native c++.
And even if you can run managed C++ in the CLR, most C++ codebases can not compile this way without major changes.
-
Re:Windows kernel is C
Oh really? Look at most of TR1 for plenty of examples of Boost libraries that are now part of the C++ standard.
Boost is a proving ground for many concepts that have since been adopted into the language as part of C++11. Some Boost libraries are no longer needed because of native language support rather than a library (BOOST_FOREACH is now a syntax feature, not to mention lambda expressions), and these language features are often clearly designed after the Boost equivalent (as far as I can tell). Others were imported with not much more than a namespace change (shared_ptr, anyone?). Then largest import was probably the threading library, followed by the random number generators and regular expressions.
Stack Overflow has a great list to get you started.
The amount of Boost in C++11 is quite amazing.
-
Re:Eh?
Maybe you should try understanding the language? Objective-C is dynamic. That means it won't do type checking the way other languages will. You have to be a little more careful than with other languages, but it does have its benefits--some of which are described here.
Also, Xcode will definitely spit out a warning if you try something like that, and you can always turn on "treat warnings as errors". You act like it will merrily leave you clueless as to your mistake, which is untrue unless you suppress warnings. (You can also use forwardInvocation: or exception handling if you have no way of avoiding the situation.)
-
Lots of stupid malware writers out there
-
Lots of stupid malware writers out there
-
Re:This really is a bizare course of action for Or
Android is here to stay and won't move away from Java and Oracle knows that very well
Yeah, it's not like Google has made their own language or uses popular, high level language internally that could replace java.
Since there's already C++ support for those needing the support, python could easily replace new development. Freeze the java API, only release the goodies in the new python API, and watch as java rides off into the sunset wrt new development. -
Re:Tube classics
Depends on the kid. Some 11 year olds have PhDs and others have a very narrow, but precise focus that makes them experts in a very small area. Get him something current, concise, and the hardware to work with. StackOverflow is the one of the best resources for programmers and leads to just about every resource you could ever need.
The first question you should ask is what do you want to accomplish? If it's "write a game" expose him to Unity or XNA. The best language to use for that is C++, but there are far more programmers that use C#, Java, or Objective-C. Python isn't a bad suggestion. It runs Eve Online.
Artificial intelligence might win him some science projects. This algorithm for flocking is surprisingly simple and not out of reach for someone new.
If he wants to make physical objects using programs, consider getting a makerbot and writing software that generates mathematical objects or just print cool stuff like quadracopters and robotic hands.
-
the ingame-CPU is quite interesting
there's already a lot done,
see reddit.com/r/dcpu16/ for the first reactions...
and the first questions on stackoverflow are already coming in - stackoverflow.com/questions/tagged/dcpu-16
-
Re:Seems silly
There are one-way encryption methods (for example, MD5, SHA1) which only allow you to encrypt a string, but not decrypt it. There are also two-way encryption schemes (allows encryption and decryption), like AES Encryption. If I had to store data which could identify users or credit card information, I would look into two-way encryption mechanisms (those which can be both encrypted and decrypted).
More info on using AES to store credit card info.
The theory behind these algorithms is quite involved, but the programming interfaces to use them are very simple. A developer should take 60 minutes to learn about them, first out of respect for the users, and second, to avoid ending up in the news.
-
Re:Text Reflow
On many websites, Safari has a built in "Reader" option button that pops up in the address bar. It does it even on
/. stories. It seems it is a simple trigger. So perhaps instead of blaming Apple, you should blame the non-mobile friendly sites you are visiting? -
Re:Compatibility or conversion
Go back and read the documentation for System.gc(). That doesn't guarantee anything. That's also what most people answer. I don't hold it against them.
Ok, here is what the documentation says:
public static void gc()
Runs the garbage collector.
Calling the gc method suggests that the Java Virtual Machine expend effort toward recycling unused objects in order to make the memory they currently occupy available for quick reuse. When control returns from the method call, the Java Virtual Machine has made a best effort to reclaim space from all discarded objects.How in your world does an implementation avoid running the garbage collector, yet uphold the statement "has made a best effort to reclaim space..." ? The language of the documentation is due to the multitreaded nature of the JVM. Fact is that System.gc() runs the GC on any JVM ever made and thats what you asked. What would happen to a multithreaded program if you tried what you suggest? Why don't you just call System.exit() while you are at it?
And while we are nitpicking about subjects, that you clearly does not know too much about, your way does not guarantee anything either. During edge cases the JVM might give up and just quit. This happens if more than 98% of the CPU time is spent on garbage collection. Such as when some idiot allocates alot of small objects when close to out of memory... http://stackoverflow.com/questions/2863984/duration-of-excessive-gc-time-in-java-lang-outofmemoryerror-gc-overhead-limit
I assume you are arguing that other languages are more deterministic. But even C programs might have malloc return valid memory, but the moment you try to use that memory your program get killed because the OS overcommits the memory (*). Some people knows this, some don't, but it is quite useless in an interview to determine their skills as a programmer!
(*) yes I know this can be turned off if you got root on the machine. Lets assume you do not.
-
Re:Please read this
Libraries only indeed. They spent most of their development effort on variadic templates but came up short. Herb Sutter addressed this in one of his talks at Going Native. The gcc guys aren't exactly finished either.
-
Re:Apple is killing text messaging
Android does the same thing, except it did it long before 2011.
Google Voice for instance can do data sms, but it can also intercept standard sms messages that arrive on your phone -- thereby centralizing every type of SMS you send or receive through one single unified interface. And it's not just Google Voice that can do this, any third party app on the Android Market can do the same on Android.
There is also the simple fact that Apple not only loaded it on a hundred million iPhone users through an OS Update, but they enabled said service automatically using your phone number as your "contact name", thereby immediately sidestepping the carriers, even on existing devices.
And on Android, the same kind of integration is done on the Address book level, but not just from gmail contacts, or your phone address book, but facebook contacts, linkedin contacts, etc. Texting someone on Android is super easy. The person receiving the text doesn't even need a mobile phone. Worst case scenario, it will just call the person up, and a robotic voice will read the text outloud to him/her. And the reverse is also true, someone can just call my phone number from a landline, leave a voice mail and Google Voice can just SMS/email me a transcript of what was said.
-
Re:Apple is killing text messaging
iMessage gives you ease of use - I don't have to care whether the person I am messaging has iMessage or not, the messaging app works it out for me without any input from me at all on the matter. This way, I don't have to treat one block of contacts different to any other, it just happens.
You mean like Google Voice and several other third party applications on Android that can do the exact same thing (assuming you're wiling to let them take over control of your standard sms inbox)?
May be, that's the problem. You have an iPhone and I have an Android phone. I guess the iPhone probably didn't allow full programmatic access to the default SMS functionality and notifications to third party developers (like Android does).
-
Re:Who shives a git!!!
Please provide detailed examples of various problem sets that support this claim.
Haha... are you insane?
Here is some helpful meta-information from the dude who designed it.
-
Re:They are not really new either
Instead of betting, why not look it up for yourself? BTW, I've written oop in straight c - it's not that hard. Anyone who thinks that c can't do oop should ask themselves why not - and give it a try.
-
Re:Since when is JavaScript an unorthodox choice?
For those who are wondering, there's a great explanation of that "[] + {}" and "{} + []" question based on the ECMA-standards on StackOverflow.
-
Partial Key Verification
This is something that I have never dealt with directly, but I saw a similar post on StackOverflow a few months ago and bookmarked it because it seemed useful.
The answer it seems is something called "Partial Key Verification": http://stackoverflow.com/questions/3550556/ive-found-my-software-as-cracked-download-on-internet-what-to-do
In short, the software would still work, but re-direct people to a page letting them know that they've been "caught" pirating software and that they should really purchase it. This won't stop everyone, but some people (especially in a business environment) won't risk "being caught", so they will purchase the software knowing that you know that they know they are pirating your software.
-
Java trapped
Say I find a Windows PC, remove its hard drive for analysis, put it in a USB enclosure, and mount it read-only on a Linux box to make the scan process immune to boot-sector malware. Is there a Free compiler capable of compiling Visual Basic code? As of a year ago, there wasn't. If not, the program is Java trapped.*
* The term's origin is historical; Java itself is no longer Java trapped, but plenty of other languages and APIs are.
-
Re:Really?
"Entre le fort et le faible, entre le riche et le pauvre, entre le maître et le serviteur, câ(TM)est la liberté qui opprime et la loi qui affranchit."
The only justice is that which is defined by society, generally in the form of laws. We give men rights (they are not inherent) so that we may more fairly structure our societies; the rights of society are paramount. What you advocate is totalitarianism in the form of monarchy; the ultimate expression of your philosophy is one man who owns the whole world. Concentration of wealth *diminishes* its utility, even your anarcho-capitalist textbooks should teach you that.
Of-course Marxists like you, are happy to use any amount of collective government violence to ensure that the wealth is "distributed equally", which means unproductively from people who CREATE wealth, to those who WANT it. Thus eventually you descend into totalitarianism and dictatorship, and you call THAT justice.
There has to be some logical step between "equal distribution of wealth" and "dictatorship". I think you need to be a little more explicit in step two. Or just y'know, admit that you're scarred by personal experiences and you're trying to rationalize what is inherently an emotional argument that has nothing to do with the real world. There is no useful pure philosophy, in attempting to argue for one you're revealing yourself as a nutcase (and harming your cause).
-
A solution
Assuming Android:
Well, your container application would override some of the keys (onBackButton for example) to do nothing, making it harder to leave the app. Or you could use key events (http://developer.android.com/reference/android/view/KeyEvent.html) to have them fire an event when a key is pressed, that you'd have to configure to your liking. Your only problem would be the home button key, since it doesn't return any value when pressed.
From what I gather from reading tidbits here and there ( http://stackoverflow.com/questions/2079691/overriding-the-home-button-how-do-i-get-rid-of-the-choice ) you'd have to make your app have an intent to be the launcher and make it the default launcher in the settings. Pressing the home key would just fire the app once again.
-
Re:DNS Hijacking
Setup a wireless network where all the HTTP requests go to the server with your content.
At least on some very popular models of tablets, it is unnecessarily difficult to restrict settings like DNS servers.
Something like this might be helpful though. Only run the Video client with the videos available locally.
-
Re:SetTimeout
That would mean that the number of ms you give it, is entierly pointless, since it won't care for it anway?
Somehow I can't see that, since it is unacceptable from a reliability standpoint. If I say 30 ms, it must run the thing in 30 ms. not in 200! Otherwise the whole animation fucks up.
And considering setInterval: What if the function takes longer than the interval? (Say you have GHC and LibreOffice compiling in the background ;) Will it skip one interval, causing the total count of executions to go haywire? Or will it execute it later? And if it does, what happens to the executions after that first late one?The whole thing becomes a horrible mess.
So I think if anything, I expect the events to be driven in a thread sparks way.
Of course that may not yet have entered the backwards world of C-like languages... -
Re:A mistake
Part of the problem is that the Javascript programming model is inherently single-threaded, so even if your Javascript engine is multi-threaded, it must fake being single-threaded. It could be that it makes more sense to just use a single-threaded Javascript engine.
-
Re:Follow proper MVC development and save time
"Only the UI? Your app on iOS was coded in Objective-C, or so I presume. You can abstract data and business layers, but still, it's written in Objective-C."
You are not required to use Objective-C for everything on iOS, only the GUI interaction (Cocoa). You can develop libraries in C or C++ and reuse these from Objective-C using Objective-C++.
-
Re:Declare the variable where it is initialized
Best practice in Java is to immediately close streams when they are no longer used and the best way to do that is from a finally block. And the only way the finally block can see the variable is if it resides in the scope of the parent block or above. So it doesn't violate anything. The first response to this stackoverflow question demonstrates the typical way to do this. You will note that fis is set to null as I said and tested for null in the finally.
-
Re:Storing passwords (not as easy as you think)
Mod parent up, the article is quite good.
A more general and simpler answer though is to *always use a standard library* - see http://stackoverflow.com/questions/1581610/how-can-i-store-my-users-passwords-safely/1581919#1581919 for a good answer.
Also ensure that your password storage is one-way hashed, and *salted* with a random salt (different per user) and uses *password stretching* (i.e. iterates the hashing function thousands of time to make brute forcing much more expensive). See http://slashdot.org/comments.pl?sid=1987632&cid=35150388 for more on password stretching including phpass, the gold-standard library for PHP used by WordPress, Drupal, etc.
Most importantly, never write your own password storage - you are virtually guaranteed to get it wrong. Apart from the above issues, what about timing attacks (Zend has an article about this from PHP perspective.)
-
Re:Notes on the trends.
Yeah, I agree that there's other things that contribute more to the "feel" than the collection classes, but this is Slashdot and the collection classes not supporting strong typing is a much harder thing to argue against than API feel.
On that subject, ARC is definitely not garbage collection. As almost an opposite cousin to the technically-strongly-typed-but-feels-weakly-typed type system, ARC feels like garbage collection but is technically not. See: http://stackoverflow.com/questions/6385212/how-does-the-new-automatic-reference-counting-mechanism-work
There are claims that each of these gives you the best of both worlds, but maybe that comes with experience, because as someone still picking up the language I've found that you generally get the worst of both worlds with both of them, as you have to learn the pitfalls of both sides, but don't get to take (much) advantage of the benefits of either. All in all, coming from C++ and C#, I am not a huge fan of Obj-C so far.
-
Re:It would be good to have optional GUI
Removing the GUI is forcing people to learn more efficient ways to manage their environment.
Removing the GUI would be a stupid move by Microsoft. I doubt they would actually do that despite what Don Jones says.
As the summary says, Microsoft is telling _developers_ of server software not to assume the presence of a GUI. So if you're writing software for servers, you may have to provide configuration and management methods via the CLI as well.
If Microsoft somehow comes up with a decent standardized way of making writing such interfaces easier, server software for windows might actually end up easier to manage than for Linux. Not sure if that is possible, but perhaps the geniuses in Microsoft Research can think of a way. The ".Net framework" of server management, or something.
While Microsoft doesn't have to much more efficient in that the GUI isn't a big resource drain for most server hardware, there are many areas where Windows as a Server is still behind.
For example:
1) Windows Services aren't shutdown in an order that respects the service dependencies as provided/registered by the services. The service dependencies are only used during start up[1]! http://support.microsoft.com/kb/203878
http://msdn.microsoft.com/en-us/library/windows/desktop/ms685149(v=vs.85).aspx2) To make matters worse a
.Net service can't register to be notified that windows is shutting down: http://stackoverflow.com/questions/7437590/is-it-possible-to-register-for-preshutdown-service-events-using-net3) The Windows event log looks nice in (some) theory but is a piece of crap in practice. IMO tail -f syslog |grep -i pattern |grep -v foo works better in practice. Yes if you're Facebook/Google scale you'd need something much better than syslog, but whatever it is, it's not the Windows Event Log/Viewer.
4) In normal Windows convention and operation you cannot rename/overwrite folders/files that are in use (aka open). This makes updates/upgrades harder to do well and in a consistent manner. This is one of the reasons why on Windows you often have to reboot just to update stuff that in Unix/Linux servers would not need a reboot to be updated. If you have $$$, you can work around this by having load balancing (but it still sucks for a developer to have to resort to this for _reliable_[2] updates: http://technet.microsoft.com/en-us/sysinternals/bb897556 ) . It's not so simple on most Unix/Linux machines to some of this "perfectly" either - since you normally can't do two directory renames atomically: e.g. move the directory "current" to "bkp" and "new" to "current" atomically, but just doing it and hoping for the best is often good enough
;).Caveat: I'm not an expert on Windows (or Unix) stuff (only started on VB.Net last year) so maybe I'm wrong. But if I am do let me know because I would really like easy solutions to the above (no, I do not consider it easy to write a Windows C++ service that registers for Preshutdown and then shuts down the
.Net stuff in the correct order, yes it can be done, but it'll take time that I'd rather spend on other stuff).[1] And quite often just because the OS has successfully started a service doesn't mean the service is ready for work, so services that depend on it still need to check for readiness - this is not a Windows only problem (can happen on Unix/Linux machines as well), but Microsoft could create a way for a windows service to say it's "ready" and allow services to depend on a service being "ready" rather than just "started".
[2] Yes you can have something shutdown your service and try to do the moves and copies (of
-
Re:Mandate works best
/**
* For the brave souls who get this far: You are the chosen ones,
* the valiant knights of programming who toil away, without rest,
* fixing our most awful code. To you, true saviors, kings of men,
* I say this: never gonna give you up, never gonna let you down,
* never gonna run around and desert you. Never gonna make you cry,
* never gonna say goodbye. Never gonna tell a lie and hurt you.
*/ //When I wrote this, only God and I understood what I was doing //Now, God only knows // I dedicate all this code, all my work, to my wife, Darlene, who will // have to support me and our three children and the dog once it gets // released into the public. // somedev1 - 6/7/02 Adding temporary tracking of Login screen // somedev2 - 5/22/07 Temporary my ass -
Sold your soul to SATA 6G yet?
This second check should also bring the chance of a file being incorrectly deduplicated due to a collision as close to zero as possible
Which means you end up having to fully rescan any file that has been involved in a CRC32 collision.
so the script will give even more than the certainty of SHA1 with nearly the speed and low CPU usage of CRC32.
Answers to this question on SO imply that on an x86-64 CPU, both Skein and SHA-1 can process 300 MB/s. So unless you're already using SATA 6G, you're still disk-bound.
The application isn't sure to be disk-bound or network-bound especially in the age of SSDs
If you're backing up an SSD to an HDD, you're still disk-bound.
-
Re:No reason to celebrate now.
Troll? Strawman? I don't know. Either way, completely wrong.
IE9 is a completely good browser.
Users said the same thing about IE6, so you're obviously not a web developer.
It's on par with Chrome, but in fact it offers even more features and security than Firefox does currently, like sandboxing. It's also standards compliant and supports HTML5.
IE9 is nowhere near Chrome or Firefox. You should be modded down for misinformation.
In terms of features, here's a quick comparison.
IE9 vs Firefox 9
http://caniuse.com/#compare=y&b1=ie+9&b2=firefox+9IE9 vs Chrome 16
http://caniuse.com/#compare=y&b1=ie+9&b2=chrome+16IE9's performance is also way behind - It barely wins on Sunspider and then loses badly on Kraken and V8 being up to 400% slower. Their 64bit build is even worse and the author didn't bother posting the results because they're so bad.
There's nothing to hate about IE9.
Sure there are. Besides not being as fast and not supporting standards as well as the others, it also only runs on Windows Vista and Windows 7. You're out of luck if you're running Windows XP, Linux or OS X. IE9 also has a new but buggy rendering engine. Here's one that I ran into a few days ago. http://www.ncf.ca/ncf/support/ie9_issue/index.html. Here's another http://stackoverflow.com/questions/6392826/mobile-table-crashes-ie9. There are more of these types of bugs in IE than all the other browsers combined. I still hate IE.
-
Re:Django
I've been using Django for a while now on my web app, having moved away from home-brewed PHP. Very easy to use, and encourages well-written and elegant code.
Another neat framework similar to Django is Flask.
Jinja2 is essentially a drop-in replacement for Django templates, and some consider Jinja2 to be superior.
-
Re:Visual Studio Express
Instead of ad hominem attacks (there must be a free-to-download template library for those methinks), try to support your own argument with facts instead.
On topic, here is a StackOverflow question (dealing with VSE 2008) whose answer may interest you. And yes, I have had to deal with Every One of the mentioned limitations, and there are more which aren't mentioned.
You can call me a cheapskate, to which I will reply that for all listed limitations, there are free (non-M$, non-Windows) alternatives available which suit me fine. -
Some absurdly small quota
HTML5's offline application cache, local storage and FileSystem portions are meant to handle all of this.
I was under the impression that the offline application cache and local storage were limited to some absurdly small number of megabytes, and file system portion not implemented at all, on a lot of these mobile devices.
-
There is a massive problem ... and here it is ...
-
Re:Time to move on, perhaps?
The 64-bit ARM architecture is ARMv8, which does not exist in any chip at the moment that I'm aware of.
http://stackoverflow.com/questions/1308500/is-iphone-os-64-bit-or-32-bit
http://en.wikipedia.org/wiki/ARMv8#ARM_cores -
Re:VS 2005?
You can do it with relatively few modifications to the CRT source (stuff like leaving out Encode/DecodePointer), there's some hints at stack overflow.
For Windows 2000 support, you'll need to manually hack ImageVersion flags in the PE, since for some fscktarded reason LINK.EXE refuses to set low enough versions.
-
Re:whose bloat
I suppose you could use a VM based language where the optimisation takes place at run time instead, but they're trying to do all that in one step where it affects the developer (who can take the need to have a super computer to build) rather than the user (who doesn't want to have a super computer to run it), or an interpreted language where you have to write a VM to run it to get any form of acceptable performance.
Or you write it in something like C++ and complain that the optimiser tool uses too much memory itself (or that the developers didn't modularise it sufficiently)
Either way, the FQA is a terrible rant with plenty of over-exaggerations, inconsistencies and 'bad things' that were obsoleted decades ago. Ignore it and hope it goes away, or read this for some rebuttals.
-
Really?
I've heard a lot of bad things about this bill. I don't think it's a good bill, and hope it doesn't pass (even though it most likely will). But I'm hearing so much FUD from the people against this bill that it makes me roll my eyes every time I hear about it . Sites like StackOverflow and the Stack Exchange Network state they their sites could be directly harmed by this bill. PLLEEEAAASE. Get Real. No judge is going to take down a Q and A forum because somebody reports that one of the 8 million questions on the site is infringing on some copyrighted question (can you copyright a single question?) in some way. That isn't going to happen. People complain about the way things are worded, and that it's too broad. But that's what judges are for. Laws have always been broad and judges have always had to interpret them. This is how the legal system works. Otherwise you could argue, "I didn't kill the man, I just locked him in a cage with a lion." There's really no other way to take down access to foreign owned piracy exclusive sites. And there really does need to be a way to take sites like this down.
-
Re:Visual Studio Licenses Ponderings
-
Re:Six months out of date much?
Android Debug Bridge over Bluetooth was not supported as of July. But if you have "Unknown sources", and pretty much all carriers' phones do by now, you can copy APKs to your phone over Bluetooth and install them from a file manager.
-
Re:I'm Skeptical Of The Usefulness
The problem with programmers.stackexchange is that a lot of people seem to fundamentally miss the point of what the site is about. People think any subjective question tangentially related to programming is OK, but through trial and error they've established specific guidelines on "good subjective, bad subjective". If everyone under the moon asked their "what programming language should I learn next?" question, nobody would ever find the good questions. There is a vocal minority of users who feel that anything should be on-topic, but over time it's been demonstrated that specific site needs a lot of moderation oversight to keep things from spiraling out of control.
Moderators on Stack Exchange sites are elected, but there are no terms — they're elected for life, or until they no longer want to volunteer for the job. A moderator would only be asked to step down if they were violating the moderator agreement or guidelines of the site. Even when the next election is held, it won't result in a dramatic turn-around of the site's scope to allow the mountains of drivel some people would like to permit on the site.
-
Re:Depends how locked-down
Why do you need to disable Ctrl-Alt-F1? If the user doesn't have a user/password for the console, then that becomes useless. (Auto-login on GDM doesn't make the user account auto-login on console.)
If you're using a centralised system of managing logins, just cut the network off upon logging in, so they can't log in again (Hint: take the cable away!)
Just run the app off of a memory stick which you then pull out after executing, if the user tries to perform Ctrl+Alt+Backspace (or equivalent) then they can't get back into the testing app, so you'll know they terminated it. They also won't be able to log in.
Trapping window-switching combinations is possible with full-screen in Java anyway, so that's not an issue provided you have source code: http://stackoverflow.com/questions/6127709/remove-the-possibility-of-using-alt-f4-and-alt-tab-in-java-gui