31

Most of the bugs we encountered with running 32-bit software on 64-bit windows had to do with the location of the software (Program Files (x86) instead of Program Files), locations of registry keys (some were found in Wow6432Node). We had these problems mostly because we needed to communicate with other software (also 32-bit), and so we needed to test the ...


23

The hardware manufacturing and driver software is written by our client. There is different driver for 32 bit and 64 bit Windows of course. So on 32 bit Windows, your software talks to one driver, and on 64 bit Windows, it talks to a different one? Let us assume there are new versions of these drivers from time-to-time. So when you only test your software ...


16

The default assumption in enlightened QA circles is "If you didn't test it, then it doesn't work". As a practical matter that's usually an unreachable goal to strive for in much the same way application engineers might like to have unit-tests for everything; but they don't believe they'll ever reach it and release on schedule. However your question can ...


15

No, there isn't. Slashes work everywhere, backslashes work only on Windows and are a pain to type and read. They are used only by people who mistakenly think they have to use them. But of course, you should really be using the Paths API (documentation for JDK8, JDK9) and never write explicit path separators anyway.


9

Erlang is a standalone language but there is work being done on Erjang which is targeting the JVM. You're right that Scala and Clojure are targeting the JVM, and there are versions of Ruby and Python targeting the JVM as well (JRuby, Jython). Yes, the JVM is a very mature platform and modern JVMs are able to optimize code and compile it on-demand to the ...


9

I'd say it's 10% option (a), 70% option (b) and 20% option (c). Writing a reliable virtual machine is hard. It's a big part of why Perl6 was 10 years late - it runs on a register-based VM unlike the common ones and had to be written essentially from scratch). Also, you can leverage not just the VM but also the standard libraries, which are huge in Java. ...


6

Seeing as 99% of all Windows installations of Windows 7 and up, and a good portion of Vista as well, are 64 bit, why the hell would you even consider not testing for that platform? It's just a no-brainer, unless you're making it specifically for a very limited group of users you KNOW are using 32 bit Windows and will continue to do so for the life of your ...


6

The c_str function returns a pointer to the string's contents, ensuring that the data is followed by a NUL (zero) character. ┌─────────────data─────────────┐ end 48 65 6C 6C 6F 20 77 6F 72 6C 64 00 H e l l o ␠ w o r l d ␀ However, the string's data itself may contain a NUL character. (This is possible because std::string has to store its ...


6

Basically, IE attempts to find the best compatibility mode first before rendering the page with the newest version of its engine, IE10 in your case. But before, IE more or less follows the given flow: Checks if there is the meta-tag in the header of the page: <meta http-equiv="X-UA-Compatible" content="IE=IEX" />, where "X" is either 7, 8, or 9. When ...


6

You don't say how exactly are you serializing the Enum, which is important here. I'm going to assume that you serialize it as the underlying integral value. In that case, your current code indeed has a versioning issue, if you add a new value into the middle of the Enum. For example, in your current code, Error is 0, Completed is 1 and Running is 2. Now ...


6

If you are going to switch anyway, you should really consider going with PDO instead of MySQLi. The main benefit, would be that your application would be able to work with any of the 11 other database backends supported by PDO, with minimal fuss. This might not be a priority for you, but since this is an open source application there's little reason to ...


5

I'm not saying I recommend this approach, but in the spirit of completeness, you could use COM to invoke Python from .NET or visa versa. I have never used COM with Python but apparently it is possible.


4

Windows NT was specifically designed to support multiple OS "personalities". In fact, it originally wasn't even intended to be a drop-in replacement for Windows and DOS, it was intended as a drop-in replacement for OS/2! On Windows NT, applications aren't written against the NT kernel, instead they are written against an OS personality, which in turn sits ...


4

IronPython tries the total integration approach. There is a package called Python.NET that is a hybrid of the CLR and the standard C based Python runtime. It seems less developed than IronPython and I'm not sure it would be ".NET" enough. However, it would give direct access to Python libraries.


4

Sorry about all the down voters who didn't bother leaving a reason why. I was in your EXACT situation, and here is what I did: I used a static code analysis tool. I tried a few, but the first one that actually worked how I wanted to was Phan. Installation was a pain and the documentation isn't the best, but once you figure out the syntax, it's very useful....


3

Providing your use case isn't dependent on speed you can use things like .net remoting and XML services to allow different platforms/languages/environments to talk to each other (this is the approach used by the Robot Framework RemoteLibrary for example). Another option is to have some common data store behind both languages (typically a database).


3

Our application shells out to run python. We had to do that instead of using IronPython because a number of the base libraries are compiled from C. A simple test for determining what you'll have to do is to parse a CSV file.


3

Hi I have been in iOS development since last 2 years. Answer: 1) No this is not at all true. In fact it is better to build a Universal app rather than separate iPhone and iPad versions of the App. As such if there is not much difference in iPhone and iPad version of the application functionality-wise, then it is better that we make a universal app. It ...


3

One of the simplest ways to achieve this is to use UDP broadcast. Essentially: The server listens for UDP packets on a certain port. When a client wants to connect to the server, it sends a broadcast UDP packet to the certain port. When the server sees a broadcast packet, it replies to that client with information about what the actual address/URL of the ...


3

In C, NULL is the same as 0x00. Or null is the same as zero. And just to be clear, NUL is an equivalent name of NULL. So Stroustrup's text is correct about how C++ c_str are terminated. To provide a bit more context. It's fairly common practice in C to memset a character array after creating it in order to make sure it will be null terminated. char foo[...


3

In theory, yes, everything should work fine. In reality, no. The differences should be relatively minor, but they do exist. As an example, a few years ago I found that some code of mine worked on Safari for windows but not for Mac. Guidance? Test everything and then test again! Don't trust emulators either. Test on the actual hardware.


3

How do i ensure compatibility between A,B and C given the fact that they are all developed by different teams? Your build tools or version control system cannot do this for you. You need integration tests for this, ideally a fully automated integration test suite. How often you run this suite depends on your team, the minimal requirement is once before ...


3

There is no recognized and commonly used standard for that. I suppose that you ask this question in order to avoid all the mistakes you may do by reinventing the wheel. In order to avoid those mistakes, you may be interested in checking the following: The logging format (and logging tools) of the operating system. The way you log in syslog is not exactly ...


2

Nope. Likewise, when the FDA is done testing new medicines on mice and rats, they skip over testing on monkeys and just sell it for human consumption. < /sarcasm> Yes, yes yes yes yes. There is nothing but sadness in store for your software if you do not test every platform you possibly can. Things are always different, and the assumptions in the ...


2

I would test any installer on as many different Windows setups as possible as from my experience the installers are most likely to fail on different systems. Otherwise, as you know from your experience with the given software, bugs are most unlikely to just show up on 32-bit or 64-bit, and you can take some calculated risk. Firstly, you should be having ...


2

The basic rule is that the more different hardware environments and OS versions you need to support with a single release, the more complex the code can get and the more media and UI assets that may be required. This complexity and asset management can result in more testing and QA efforts required and/or more potential issues, compatibility problems or ...


2

My personal feeling is that you probably shouldn't be injecting a third-party library into the page anyway. Keep in mind, that -- since it's a Chrome extension -- you only need to support a single browser anyway. So that means things like subscribing to events, Ajax, and all the other stuff that jQuery abstracts are all pretty easy because you don't need to ...


2

You could possibly do what the HTML5Boilerplate does: <script>window.jQuery || document.write('<script src="js/libs/jquery-1.5.1.min.js">\x3C/script>')</script>


2

We are using Python.Net to call CLR Code from Python and vice vera. It works rather well, but has some drawbacks, mainly that writing CLR code in Python is ...weird (this also applies to the other way). So we are mostly using it as an interface: Have high level methods which can be called and which return defined data structures - we try to avoid to create ...


Only top voted, non community-wiki answers of a minimum length are eligible