rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Reputation, referrals (both positive and negative), examples of code, interview the team that will be designing, developing, and delivering the end product. There are other points as well, but this is a starting point.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You need to reinstall CodeBlocks for XP. You can't run Win7 software on an XP system.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

...post retracted...

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Are you sure you have admin privileges on your computer? Are you trying to install a 32-bit, or 64-bit version of Oracle - your system is 32-bit. Did you remove some files after you installed Oracle, possibly thinking they were not necessary?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

LONG types (blobs basically) usually have to be fetched separately. What is stored in the table is a link to the actual data, which may be in an external file. Read the Oracle documentation on how to do that. I haven't done this for almost 10 years so that's as much as I can tell you without excessive time spent doing what you need to do yourself... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

What do YOU want to do? You say you "know Oracle". Do you know PL/SQL? What about Oracle's embedded Java implementation? Tools?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Do you know if this version of RDB has an ODBC interface? If so, you can use that to migrate the data to most any current database. Oracle databases all have ODBC available. In any case, a DEC RDB database is NOT Oracle... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

The key to speed in joining tables in any relational database (such as mysql) are indices. If you do frequent queries on a specific join, then I recommend using a view and perform the query on that.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

This is basically a 32-bit address space. Each bit in a computer word represents a power of 2. If you have 4 bits, then it can represent 2^4 distinct values (including 0), or 16 values: example

0000 == 0
0001 == 1
0010 == 2
0011 == 3
0100 == 4
0101 == 5
0110 == 6
0111 == 7
1000 == 8
1001 == 9
1010 == 10
1011 == 11
1100 == 12
1101 == 13
1110 == 14
1111 == 15

IE, 16 discinct values. So 2^32 == approximately 4 billion distinct values, such as memory addresses.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster
  1. Keep eyes open.
  2. Observe.
  3. Ask questions, such as "Why are we doing that?", "What advantages does that gear give us?", "Why Fast Ethernet, and not gigabit?", "What management tools (snmp, nagios, etc) are we going to use?", "What about a firewall?"...

Sounds like a good situation for an intern to learn about setting up a new network. Good luck! :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

I agree with AW - arduino boards/devices are a great way to learn about interacting with hardware from your PC. My grandson does some awesome stuff with them, using his Linux laptop to control them. He uses them for control systems on his RPV aircraft and 'copters.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

First, you need to understand how basic colors can be combined to create others. There are a number of standards for this. Do some Google/Wikipedia searches - there is a lot of information on the web to help you understand this domain better.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You are returning a reference to a local variable - not good! Even though the elements of arr[] are allocated on the heap (malloc()), arr[] itself is not. This would work if you made it static, but the fact of the matter is that this is REALLY bad code! Rethink your approach.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Read this, and then ask again: http://en.wikipedia.org/wiki/Locality_of_reference
With regard to cache, there are complex algorithms that determine if it is more efficient to use local vs. remote cache, often depending upon the frequency of access. The more frequent, the better it is to have the cache local to the system accessing it. Unfortunately, if that element is accessed by many systems, if the data it refers to changes, then there is the overhead of updating all the local copies to be considered. Infrequent changes may not be a major factor, but frequent updates can become a serious network issue.

FYI, I am in the process of designing a new distributed web page cache for our network browsers - we have thousands of servers at many world-wide data centers, including the Amazon cloud. This is a subject that I am currently doing serious research on.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Show the contents of the crontab itself. The script is one thing. The crontab is another.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Trust me, you may have similar problems with flash drives on Windows as well - I know that I do! :-)
My advice is to copy one file at a time, wait a bit, and then continue... Windows does NOT deal with buffer overflows to devices very well. :-( This has been a serious PITA for me, even with Windows 7. Linux, not so much of a problem. It seems to deal with the speed mismatch between system drives and external CD/DVD/USB/Flash drives a lot better. FWIW, Alcohol for Windows does have an evaluation period - you might want to check it out. For me, on Windows, it has produced the fewest "coasters".

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

@dw it could just have just have been easily Eclipse or VS.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

There is the circuitry of the computer, external circuitry of other devices, and just other (simple) external circuitry, which if you want to control you need some kind of connectivity, such as RS-232, RS-485, etc. How you "talk" to those devices and circuitry depends upon the operating system, and a lot of other stuff. Most of the time, people use C to access these functions, to set or read voltages on various output ports or other stuff, but thankfully C code can be used in C++ - consider C++ as C with classes... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

With Windows systems, sometimes it seems to lose connections with devices - a problem I have with USB drives on occasion. The solution is to go to the device manager and remove the device and controller from the system, then reboot. The driver will be reinstalled and reconfigured on reboot, hopefully restoring access to the device. At least it works for my USB issues... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

It depends upon one thing: your phone account. Does it support using your phone for tethering or as a WiFi "hotspot"? Most will allow that, but usually charge you a premium for the privilege. You configure your phone as a WiFi hotspot, and then connect your computer and (usually up to 4 others - 5 max) others to the WiFi SSID that the phone would then be broadcasting. I have done this frequently with my Android phone on my AT&T phone account. It is exactly the same as connecting to any public (or private) WiFi access point.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Instead of using separate scripts, use bash functions. Variables set there would be visible to other functions inside the same executing script.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Shell variables, including environment variables, are context sensitive. IE, you set a variable in one script, it (or its changes) are not visible outside of it after exit. If they are exported environmeent variables, then they are visible to scripts that IT calls, but not to the script that called it.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Hessian seems a bit dated (in internet time terms) - the last updates I found on their website were 2010. What exactly are you trying to accomplish?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

All that said, ALWAYS use the initialization list to set your member variables to some sane default value. Ones that require more complex work to set properly - that CAN be done inside main, but ONLY after you have set a proper default value, even if it is a flag that it wasn't properly initialized for the domain of the class. An example of this might be a file descriptor. Valid values are >= 0. So, if your class has a member that is a file descriptor, initialize it to -1. That way, you can tell easily that it is not something you want to perform I/O on... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

A couple of observations:

  1. C++ classes have member initializers which should be used OUTSIDE of the main block of the constructor. IE, do this:

    Cube::Cube(int x, int y, int z)
    : width(x), height(y), other(z)
    {
    }

Why? Because you always want your member variables initialized before you can use them. Once you are inside the main block of the constructor, you can use them, initialized or not - BOOM!

So, your second example is correct. If you submitted the first example as an exercise or exam product in one of my classes, you would have been seriously downgraded for that... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

I would add one change to the structures/classes/members shown by decepticon, and that is to use a std::vector<CArticle> for the _articles member in the CLibrary class. Also, it is STRONGLY recommended by standards to NOT use leading underscores for local/class/static variables as that is reserved for internal use by system libraries, etc. IE, use m_articles instead. Also, the std::vector class has the advantage of being able to automatically resize itself when you add more elements than it may have been configured for in the first place. In decepticon's example, you would have to resize it manually in your addArticle() method if the size of the array has reached its previous limit.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Try "ps -aef" | grep bash | grep yourid"

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

This is a binary file. An image consists of pixels. Usually, they are encoded into 8, 16, 24, or 32 bit values depending upon the "depth" of the image (number of colors). This looks like a 16 bit image at first glance (no guarantees - it may be 32-bit). You need to know the size of image in pixels across and down. The first field in each line represents something, but I'm not sure what. Since it seems to increase in 16 decimal digit values for each line, that means something, but what... :-) My guess? Is that it is a standard file format such as gif, jpeg, png, or such. Research standard image encoding standards and figure out which. I haven't don't image processing stuff for over 20 years, so I don't know what more to tell you.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

What IDE are you using?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

I've used ffmpeg for live streaming to vlc to display the output. You can also use VLC directly.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Why are you using strings to contain numeric (int) values? Why aren't you using arrays of ints instead?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Asking "What's the best programming language?" is much like asking "What's the best airplane?" - it entirely depends upon what you want to do with it.

For system-level programming, C and C++ are the languages of choice.
For system-management and scripting, bash, Perl, and Python rule.
For complex application development, C++, Java, and (for .NET applications) C#.

And of course there are other niche languages such as Haskell, ObjectiveC, prolog, lisp, snobol, fortran,... This list is VERY long! :-) I once did a lot of programming in Dibol, a business language developed by DEC. You can still get it for PC's - called DBL. Just do NOT EVER ask me to program in it again!

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

This has been a Windows problem for just about ever, especially with XP. It is basically the software trying to push data to the drive faster than it can write it until the hardware buffer overflows... The OS then puts the device into read-only mode. You can remove and re-insert the disc, but you will need to determine the last file that was being written, and overwrite it as it will undoubtedly be corrupted and/or truncated.

FWIW, there are good 3rd party CD/DVD burning software out there that can handle this much better than the ones provided by MS. Two that are recommended are Nero and Alcohol. I have used Alcohol 120% (the high-end version) for years, and was very happy with it. These days I use Linux tools... :-)

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Well, if you don't understand derivatives (basic calculus), then you first need to focus on your maths! AI for the most part has a (as you observed) big dependency upon integral and differential calculus. Here is a link to a program which may help with that (shameless plug): http://www.helpwithmath.com/index.php
The author of the program is Dr. Michael Beeson, a close friend for over 40 years, and previously chair of the Department of Mathematics at San Jose State University in California. From my evaluation of the program, and reviews, it is very good at teaching the fundamentals. I even got a copy for my genius grandson who also needed some help with his math and calculus. It won't make you an expert, but it will help get you up to speed.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You want a java method that can do that? RTFM! Java docs for all of this stuff is readily available on the web. Try a visit to the Oracle java language pages...

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Sorry, but we don't do your homework/schoolwork for you. Make an honest effort first, post what you've done here, and we may then want to critique your work, but let's just say you have NOT gotten off to a good start! :-(

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

My first commercial software was for a wholesale bakery - A/R, A/P, and G/L. Then I was an OEM for the major manufacturing accounting software system MCBA, on which I would do custom modifications for our clients in upstate New York. As decepticon said, you first need to understand the principles of accounting. What language you develop it in is pretty irrelevant, but most people expect a pretty standard GUI for presentation, and integration between the modules. You also need a database, of which there are good free ones out there (MySQL, PostgreSQL, etc). In any case, this is a non-trivial undertaking.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You need at the least a cable modem (you can purchase these from Best Buy, Amazon.com, et al). You should probably also get an ethernet switch/router, which you connect the modem to with the ethernet port, and connect the modem via its coaxial connector to the cable. Finally, you will need to configure the modem (contact your cable provider for instructions) and the router.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

If you don't replace the drive, you first need to boot into a live cd/dvd/usb device and run the badblocks command on the first sectors of the disc. If the boot sector (first sector on disc) is bad, then you will have to replace the drive. If not, then format the drive and create your file systems with the live system, and then run "fsck -c" on the file system partitions, such as "fsck -c /dev/sda1". This will scan the file system on that partition for bad blocks, and map them out of use. Finally, you will be able to install the operating system, telling it which partitions to use - DON'T let it auto-partition the drive for you again. Usually you will create 3 partitions, 1 for /boot, 1 for swap, and 1 for /. You can use just two if you want /boot to reside directly in /, 1 for / and 1 for swap. I think Ubuntu usually does the latter (2 partitions), whereas Fedora and RHEL do the former (3 partitions).

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Have you looked into either VLC or ffmpeg to do this. I have used both in the past to stream from my usb video camera, as well as from various files. Using ffmpeg is nice because it can transcode on the fly from any to about any format, so you can store just one format of a video on your server, and deliver to the user what they need, such as flv, mp4, mkv, etc.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

As Shulc said, there are tools out there that will enable the installation of OSX on compatible x86 hardware, but bear in mind that there is a LOT of cruft that won't run because of their dependence upon hardware/firmware that is unique to Apple systems. I would suggest that you first try CimmerianX's approach of trying to install OSX in a virtual machine running under either Windows or Linux.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Well, you can see all the classes as they load with the -verbose:class option when you start the jvm. You can pipe that output to a file. After they are loaded, the application should run normally.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You can also use nslookup to see if your host name is recognized by DNS. Open up a cmd.exe window and enter the command "nslookup www.mydomain.com", using your host.domainname. If it can't find your domain, you will get an error something like this:

*** some.dns.server can't find www.mydomain.com: Non-existent domain

This is better than using ping since some hosting services will block pings to their networks to avoid a number of types of denial-of-service attacks.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

By the way, here are a couple of excellent articles on this subject in this week's Embedded Systems newsletter: http://e.ubmelectronics.com/audience/UBMTechNewsletters/07-29-13-EMB-Tech-Focus.html

ddanbe commented: Hey! Good newsletter tip. +14
rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

IT infrastructure is all the computer hardware, networking gear, wiring, WiFi, power supply, and software that your systems utilize. How many desktops, laptops, and servers does your organization require/have? What about networking? Backup power for servers? Managing and maintaining these (both hardware and software repairs, patches, and upgrades) are all part of IT infrastructure management. These days, you should hire someone, but if your organization is small, then there are many IT contractors out there that will deal with your systems on either an hourly basis, or contract basis.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

You could use an autoit script and call that from C++ using the system() or one of the exec() functions. AutoIt lookes very capable. Unfortunately they don't provide source code, but it is free.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

What are you really trying to do? Understand how pointers adn pointer arithmetic work and the relationship between pointers and arrays?

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

Sorry, be we don't do your school work for you! This information is easily available on the web. Wikipedia has some great articles on networking fundamentals.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

!. Constructors do not have return values.
2. What are the default values when constructing a 24time object.

rubberman 1,355 Nearly a Posting Virtuoso Featured Poster

To do what? Keep time? Display time?