Most of the crap produced by Acclaim is just fuel for the teenage dorks that make up most of the the XBox buyers anyway...
Acclaim is not known for games targeted at youngsters, which is the Cube's market. Same for the other third party developers: no drive to market quality E rated games. Which means Nintendo has been given a monopoly by default.
PS Referencing a previous/. post, wasn't Acclaim listed for breaking contracts in the 25 dumbest moments in gaming? Point is the company DOES have a history of substituting marketing for quality, so perhaps their pulling out doesn't mean much other then such an approach does not work in Cubeland.
A number of others have mentioned porting the back end from Access's built in JET database using file sharing semantics to another SQL database. MySQL has been mentioned, and the combination of an Access front end with MySQL servering tables via ODBC is a much more reliable, especially with multiple users.
It is possible to write Visual Basic for Access code that opens a database, looks at the tables, and generates SQL DDL and DML statements. Having done this, here is a list of gotcha's, or Things discovered as life goes on...
SQL Naming and Other Standards Checks Check all tables against the following list while in Design view:
1. SQL names may not contain spaces. Access names may.
2. Access allows the use of some SQL reserved words, like INDEX, for table and column names. SQL obviously does not. These names must be changed to an SQL identifier (not a reserved word).
3. Set the Required property to Yes for all primary key columns.
4. Set the Indexed property to No for all columns that are members of a multi-column primary key.
More details on these and other topics are presented below.
Fields vs. Indexes The Jet database engine splits fields and indexes into two separate hierarchies. One cannot tell when inspecting fields if they are part of an index or not. Instead one must navigate from the field level back up to the table level and then down to the index level.
Primary Keys and NULL Values Access does not mandate table primary key columns to be NOT NULL. One can use a column in a primary key even if the Required property is No. What Access does instead is disallow NULL values in the corresponding index. So during data entry, an INSERT or UPDATE with a NULL primary key is rejected by the DAO at index update time, which precedes column update time.
MySQL will not allow this. It (and other database servers) mandate that no part of the PRIMARY KEY may contain a NULL value. In Preview, verify NOT NULL is specified for all columns in the CREATE TABLE statement when a subsequent ALTER TABLE ADD PRIMARY KEY statement is generated.
Primary Key Indexes Access automatically generates an index for each column in a multi-column primary key. If indexing is also specified for such a column in the table design form, Access generates two different indexes on the same column.
To eliminate redundant indexes, do not index a column that belongs to a mult-column primary key.
Autonumber Data Type Support Access does not allow setting the required property on an autonumber field. Set NOT NULL in an SQL DDL statement when both of the following conditions are true:
1. The column has the dbAutoIncrField attribute.
2. The primary key contains exactly just this column.
Access allows autonumber fields that are NOT keys. MySQL does not.
Absolutely. The whole point of a resume is to get an interview. If there is something you can add to a resume that increases the probability of getting an interview, add it. If you can subtract something to increase the probability, subtract it.
If you learn something from a community project and use that to solve an on-the-job problem, include how you solved the problem in the employment section. If you learn a marketable skill from community project, include it in the experience section (but don't tie it to a company).
If a community project does not either map to a direct job benefit or provide a skill for a future job, leave it off. Unless you know a company receiving the resume actively recruits people who have participated in community projects.
Couple of points:
* We are in a down economy. Starting salaries are below what they were two years ago (33-50% in Dallas, TX for example). Companies won't pay more then what they need, and may refuse a "overqualified" candidate. Will mentioning a community project help or hinder in this regard?
* Tailor each resume submission for the job. Add things that address job requirements and delete things that don't.
* Most staffing agencies rewrite candidate resumes. If you have been sent out on an interview by a staffing firm, ask for the resume they submitted before you go. This helps you a) prepare for the interview and b) see what items were deleted from your original submission.
Something to keep in mind: For real time speech quality, wireline TDM bandwidth = 0.15 * IP Bandwidth. Meaning that a 100 Mbps Ethernet link can support approximately 10 T1 lines worth of voice calls (120 simultaneous full duplex conversations). This is based on Ethernet realizing a 33% average throughput on shared media plus allowing 100% headroom for equivalent quality after IP packetization and quantization.
If the throughput of wireless Ethernet is the same as wireline, and by throughput we're not talking about the burst speed of the link, then an 802.11b link should be able to support one T1 worth of voice channels, or twelve simultaneous conversations. If RF interference reduces the throughput, your mileage may vary.
Another alternative is to lease a T1 qualified two twisted pair copper line between the two buildings from the phone company. Other posts are mentioning using channel banks at either end of the line. With leasing, the cost and pain of digging et al belongs to the local phone company. It may be worth the monthly rate for 100 feet to avoid that.
Green Hills has proposed an Embedded C++ standard which is essentially ANSI C++ without exception handling, mutiple inheritance, namespaces, run time type identification, templates, or virtual base classes. It does support the C++ inline keyword. So the compiler will, when possible, expand functions as macros. This results in faster performance at the expense of larger code space, but smaller stack space.
There are few problems porting code from C to C++. It's actually more difficult to port from pre- to post-ANSI C++, e.g. because of changes to the definition of the for statement. A C++ compiler is more type strict then a C compiler, meaning that more operations between different fundamental data types will be flagged as errors.
EC++ won't result in tremendous code bloat, either. About the same order of ANSI C. Plus if this system continues to evolve, one can take advantage of easier memory allocation with new and delete as opposed to malloc and free.
Granted the original post asked about inlining C functions. But moving to C++ gives one portability, since the inline keyword is part of the ANSI C++ standard.
Acclaim is not known for games targeted at youngsters, which is the Cube's market. Same for the other third party developers: no drive to market quality E rated games. Which means Nintendo has been given a monopoly by default.
PS Referencing a previous /. post, wasn't Acclaim listed for breaking contracts in the 25 dumbest moments in gaming? Point is the company DOES have a history of substituting marketing for quality, so perhaps their pulling out doesn't mean much other then such an approach does not work in Cubeland.
A number of others have mentioned porting the back end from Access's built in JET database using file sharing semantics to another SQL database. MySQL has been mentioned, and the combination of an Access front end with MySQL servering tables via ODBC is a much more reliable, especially with multiple users.
It is possible to write Visual Basic for Access code that opens a database, looks at the tables, and generates SQL DDL and DML statements. Having done this, here is a list of gotcha's, or Things discovered as life goes on...
SQL Naming and Other Standards Checks
Check all tables against the following list while in Design view:
1. SQL names may not contain spaces. Access names may.
2. Access allows the use of some SQL reserved words, like INDEX, for table and column names. SQL obviously does not. These names must be changed to an SQL identifier (not a reserved word).
3. Set the Required property to Yes for all primary key columns.
4. Set the Indexed property to No for all columns that are members of a multi-column primary key.
More details on these and other topics are presented below.
Fields vs. Indexes
The Jet database engine splits fields and indexes into two separate hierarchies. One cannot tell when inspecting fields if they are part of an index or not. Instead one must navigate from the field level back up to the table level and then down to the index level.
Primary Keys and NULL Values
Access does not mandate table primary key columns to be NOT NULL. One can use a column in a primary key even if the Required property is No. What Access does instead is disallow NULL values in the corresponding index. So during data entry, an INSERT or UPDATE with a NULL primary key is rejected by the DAO at index update time, which precedes column update time.
MySQL will not allow this. It (and other database servers) mandate that no part of the PRIMARY KEY may contain a NULL value. In Preview, verify NOT NULL is specified for all columns in the CREATE TABLE statement when a subsequent ALTER TABLE ADD PRIMARY KEY statement is generated.
Primary Key Indexes
Access automatically generates an index for each column in a multi-column primary key. If indexing is also specified for such a column in the table design form, Access generates two different indexes on the same column.
To eliminate redundant indexes, do not index a column that belongs to a mult-column primary key.
Autonumber Data Type Support
Access does not allow setting the required property on an autonumber field. Set NOT NULL in an SQL DDL statement when both of the following conditions are true:
1. The column has the dbAutoIncrField attribute.
2. The primary key contains exactly just this column.
Access allows autonumber fields that are NOT keys. MySQL does not.
--Jason Kazarian
access2mysql@leftbrainedgeeks.com
Absolutely. The whole point of a resume is to get an interview. If there is something you can add to a resume that increases the probability of getting an interview, add it. If you can subtract something to increase the probability, subtract it.
If you learn something from a community project and use that to solve an on-the-job problem, include how you solved the problem in the employment section. If you learn a marketable skill from community project, include it in the experience section (but don't tie it to a company).
If a community project does not either map to a direct job benefit or provide a skill for a future job, leave it off. Unless you know a company receiving the resume actively recruits people who have participated in community projects.
Couple of points:
* We are in a down economy. Starting salaries are below what they were two years ago (33-50% in Dallas, TX for example). Companies won't pay more then what they need, and may refuse a "overqualified" candidate. Will mentioning a community project help or hinder in this regard?
* Tailor each resume submission for the job. Add things that address job requirements and delete things that don't.
* Most staffing agencies rewrite candidate resumes. If you have been sent out on an interview by a staffing firm, ask for the resume they submitted before you go. This helps you a) prepare for the interview and b) see what items were deleted from your original submission.
Something to keep in mind: For real time speech quality, wireline TDM bandwidth = 0.15 * IP Bandwidth. Meaning that a 100 Mbps Ethernet link can support approximately 10 T1 lines worth of voice calls (120 simultaneous full duplex conversations). This is based on Ethernet realizing a 33% average throughput on shared media plus allowing 100% headroom for equivalent quality after IP packetization and quantization.
If the throughput of wireless Ethernet is the same as wireline, and by throughput we're not talking about the burst speed of the link, then an 802.11b link should be able to support one T1 worth of voice channels, or twelve simultaneous conversations. If RF interference reduces the throughput, your mileage may vary.
Another alternative is to lease a T1 qualified two twisted pair copper line between the two buildings from the phone company. Other posts are mentioning using channel banks at either end of the line. With leasing, the cost and pain of digging et al belongs to the local phone company. It may be worth the monthly rate for 100 feet to avoid that.
Green Hills has proposed an Embedded C++ standard which is essentially ANSI C++ without exception handling, mutiple inheritance, namespaces, run time type identification, templates, or virtual base classes. It does support the C++ inline keyword. So the compiler will, when possible, expand functions as macros. This results in faster performance at the expense of larger code space, but smaller stack space.
There are few problems porting code from C to C++. It's actually more difficult to port from pre- to post-ANSI C++, e.g. because of changes to the definition of the for statement. A C++ compiler is more type strict then a C compiler, meaning that more operations between different fundamental data types will be flagged as errors.
EC++ won't result in tremendous code bloat, either. About the same order of ANSI C. Plus if this system continues to evolve, one can take advantage of easier memory allocation with new and delete as opposed to malloc and free.
Granted the original post asked about inlining C functions. But moving to C++ gives one portability, since the inline keyword is part of the ANSI C++ standard.