Jump to content

  • Log In with Google      Sign In   
  • Create Account

Chad Smith

Member Since 26 Jun 2005
Offline Last Active Today, 08:45 AM

Topics I've Started

Lack of Production From Team Members

15 October 2014 - 12:52 AM

Ok, I am going to try to explain a situation I am in right now, and attempt to get some advice on how to handle it.  This will be a pretty long post though...

 

About a month ago in my Software Development course we were given a big group project.  After talking to the person playing as the "customer" (basically just describing the system he wanted and we had to figure out what he wants, requirements, and all that) to figure out what to do we went around and talked to everyone in the class to figure out our team.  I took this seriously and didn't just pick random people and chose people that had different expertise but complemented each other (i.e: front end, UI, and back end stuff). We had our team and everything seemed great after talking and telling each other what we were good at.

 

We got together again not to long afterwards to discuss the technology we would use.  After discussing it, and figuring out what the back end programmers wanted to use, I saw I was the only one who did not actually know it (ugh...PHP...I still hate it) nor really never really wanted to learn it.  No problem, I didn't want to be the weak link in the team, so that weekend I spend the entire weekend, along with my other school work, using it and knowing how to use it so I felt comfortable with it.  Couple days after that we got together again and the back end people started to layout what we wanted to do first.  I was anxious to get started so I actually went ahead and said I would get some base code started up and get to work on the initial system.  Needless to say here we are about a month later and I am still the only back end programmer to have done any work.  It's been me working my butt off with the other team members working on the front end to work on connecting everything.  That's been going great and we have great communication with each other.  Nothing to complain about there.  Though we still meet every couple days (mostly all of us) to talk about where we are at.  Well the other back end programmers show up sometimes and sometimes they do not.  When they show up they act like they are ready to get going but they haven't done anything yet.  So me and the lead front end person were talking the other day about it.  We went ahead and gave them some tasks for them to complete and they agreed and seemed excited to get going.  We meet today and we find out they have nothing done, then left the meeting early.

 

So here I am now the lead programmer using technology I do not like nor wanted to use (but to be a team player I didn't complain and studied my butt off to not be the weak link).  I'm actually fine with that.  Though we also have documentation we have to complete and turn in on certain dates.  The lead front end guy and I got together and worked on some of that then told the rest of the team we needed it to complete. Now we are getting complaints from the two members, who haven't done a single thing on the project, that we asked them to complete the documentation.  The lead front end guy and I have pretty much just stood up and said we are not going to do anymore documentation as their is just absolutely no way we can manage all the code and write all the documentation with zero help from the two people doing nothing.

 

We've tried bringing it up with them and they "apologize" and say they are going to get started now and seem anxious.  Nothing still.  I, and the lead front end guy, have no idea what to do now.  We are stuck waiting on them trying to finish their tasks we assigned to them, that they still haven't started, that I am pretty much about ready to just say "I'll just all the back end code, y'all just make the documentation look good!"

 

Anyone have any suggestions on what to do here?  Because right now when we do the peer review of each member on what the contributed to the project we flat out can't give them anything, except for the little they have done with the documentation.  


AETG Algorithm

02 September 2014 - 01:36 PM

I first want to start off by saying that this is an assignment.  While I do need some help I am not looking for the answer on the exact implementation or for someone to write the code for me.  I'm really just looking to get a little help on getting my head around the algorithm without getting my head stuck on the abstract idea of it and some ideas to build on.

 

Anyway, the assignment is to implement the AETG algorithm that generates combinatorial test suites.  For example: Lets say that we have this very simple table as an example for us to work from:

 

f0 | f1 | f2 | f3

-------------------

0  | 3  | 6  | 9

-------------------

1  | 4  | 7  | 10

-------------------

2  | 5  | 8  | 11 

-------------------

 

Simple enough, it has 4 factors and 3 levels.  I get that we have a total of 34 total different combinations. 

 

Now I need to create all the pairs and in the assignment I only have to support 2-way coverage.  So to work from the example I gave above here some pairs:

Note: these aren't all the pairs to create of course, just a quick example

{0,3} {0,6} {0,9}

{1,3} {1,6} {1,9}

{2,3} {2,6} {2,9}

so on and so on, until you have all the pairs

 

And then the suite that covers all pairs and report or save the smallest test suite.  

While when working it out by hand I get this and I seem to understand the basics of it and could solve it by hand given enough time.  I felt if I could solve it that way then I could sit down and put the thought process I did by hand into code, though nothing really seems to be coming out and I am struggling to put this thought process into code and I think it is because that is all my understanding of this algorithm is, just very basic.  I've tried to read some papers on it though the abstract approach to it gets me a little lost in a few areas.  Sadly combinatorical math is not my strong suit at all.

 

So here is my though process and what I am looking at and what I have so far:

  1. Create the initial covering array/table (like the example I gave at the start of this post).  I am just using my own 2D dynamic array class I created (Basically a wrapper of std::vector< std::vector<int> >
  2. Enumerate all the pairs.  I was thinking of just using another 2D dynamic array.  When I find all the pairs for that row, pushing that row into the dynamic array and just noting that two indexs right next to each other are the pairs.  This though seems like it'd be incredibly slow when the in the end the program uses 50 candidates and that there should be an easier way that I am missing.  Though I also know that it can be evil to try to optimize  something before something gets working.
  3. Create a test suite that uses all pairs.  Report/Save it to the user.  I can see just a 2D Dynamic Array working for this.  Then just reporting that array to the user (printing it out or saving the array to a file).

As you can see I have a pretty bare bone basic knowledge of it and each paper I read on it i just seem to confuse myself more with with the abstract view they seem to give.  With that I am struggling knowing about this algorithm and hoping someone here could try to explain some things, really anything about it.

 

Is there something I should look at or have any ideas for me?  Right now I am stuck on the loop to enumerate all the pairs.  If I was doing it on paper I would just start on the top left and pair that up with everything to the right of it (using example from above, that'd give me the pairs)

{0,3} {0,4} {0,5} {0,6} {0,7} {0,8} {0,9} {0,10} {0,11}

then just move down to the next row in that column, then move to the next column once I have done all the rows for a column.  Though I seem to be struggling in putting that into the correct for loop.

 

Thanks for any ideas anyone may have.  I'll take any ideas in trying to translating it into code.

 

Thanks,

Chad!


Fixing your own problems

30 October 2013 - 10:34 PM

So I just had this happened to me so I had to ask.  How many times have some of y'all have been having a weird problem in your code and you just needed to get some help.  So you come here to post a question and while typing out the question, explaining what you want, and providing some code you immediately see your issue and can fix it yourself?

 

Yep that just happened to me.  Couldn't figure out what was wrong.  I was on it for about an hour looking at code and debugging and couldn't find anything and it seemed so simple.  So I came here to type out a question and explaining what in theory thought should be happening I immediately saw my issue.  Fixed it in my code and sure enough bam it runs as desired.  Well at least I caught it before I clicked post so I didn't look too dumb.

 

How many times has this or something similar happened to you?


Ubuntu 13.04/13.10 Issue

20 October 2013 - 01:30 PM

I am a Linux/Ubuntu "noob" really so forgive me ahead of time.  I I wanted to ask this question here also as I know there are some people on here who seem to be experts with some Linux distributions.

 

Anyway I started Dual Booting Ubuntu 13.04 with Windows 8 a couple days ago.  The installation went smoothly and everything worked great.  I was read up on some things about the Nvidia Drivers (was using my Intel 4000 Card first couple days) and seemed from everything I read, this command should work:

sudo apt-get install nvidia-current

everything seemed fine.  I then did the update to 13.10.  That seemed to go smoothly and it asked me to restart so I rebooted.  On the reboot into Ubuntu that didn't go so smoothly.  All I have is the desktop background.  The Unity Launcher doesn't seem to load up.  All I see is my desktop background and I can do crtl+alt+T to bring the terminal up but that seems to be it.  Nothing else.  I tried another reboot and the same thing.

 

I thought I would try to remove the nvidia packages and see if that helped.  So I did

dpkg -l | grep nvidia-

so list the packages then removed them with 

sudo apt-get purge <insert package name here>

that seemed to remove them.  Rebooted and the same thing.  Still only have the desktop background with no Unity Launcher or anything.  anyone here have any advice about what the issue could be?  I'm not sure what do about a recovery or anything like that.  So if anyone has any advice to try or know what the issue could be that'd be great.  A Google Search seems to lead that this was a Nvidia issue and to remove the packages.  So I followed those instructions like I listed and nothing.  So I am a little lost right now.

 

Thanks to all who help!  

PS: my Windows 8 installation remains unaffected and is what I am using right now to type this and look for solutions.

 


SFML: Wrong Entity Movement

13 July 2013 - 02:50 PM

This really feels like a dumb question because of how basic it seems but  yet for some reason I must be over looking it.  I've been working on a way to allow custom configuration of controls and movement of entity's that wasn't all hard coded into the game logic.

 

Anyway, I have something working but it seems my movement of the Entity is wrong.  No matter what key I press the Entity always moves up.  I use a Functor to pass in the input action.  This is how I do it:

void Player::InitializeActions()
{
	const float playerSpeed = 200.0f;
	actionBinding[MoveLeft].action = derivedAction<Aircraft>(AircraftMover(-playerSpeed, 0.f));
	actionBinding[MoveRight].action = derivedAction<Aircraft>(AircraftMover(+playerSpeed, 0.f));
	actionBinding[MoveUp].action = derivedAction<Aircraft>(AircraftMover(0.f, -playerSpeed));
	actionBinding[MoveDown].action = derivedAction<Aircraft>(AircraftMover(0.f, +playerSpeed));
}

The Aircraft Mover Functor looks as follows:

struct AircraftMover
{
	AircraftMover(float vx, float vy)
		: velocity(vx, vy)
	{
	}

	void operator() (Aircraft& aircraft, sf::Time) const
	{
		aircraft.Accelerate(velocity);
	}

	sf::Vector2f velocity;
};

The accelerate function just adds the given velocity with the current.  Something like this:

void Entity::Accelerate(sf::Vector2f theVelocity)
{
	velocity += theVelocity;
}

The problem seems to be no matter if I press Up, Down, Left, or Right the entity always moves up.  I can't seem to figure out why.  It feels so basic and I feel like I should know/see something like this but I can't seem to figure out why the velocity is always in the Y Direction.  

 

Anyone else see anything?  This is really the only place I handle movement.  Only other things just sets the velocity to 0 when it loads the entity.

 

Thanks for any help.  This just sees so basic...


PARTNERS