follow A Selection of Varied Topics

Friday, December 24, 2010

Let's be angsty, shall we?

I've got a simply gigantic doozy of a post being worked upon, the obligatory end-of-year post, and it would have been the 200th post too, but I feel the waves of irony, sarcasm and angst [oh and humor] washing over me today.

.......
Naturally I've all but forgotten what I was going to be angsty about! Oh well here's for a quick recap.

Patriocentricity update: 
Stacy McDonald replied to my comment....well actually she didn't publish it, but sent me an email.
[I had mercifully all but forgotten about it until right now, heh.] Suffice it to say that I angsted about the whole thing for a week or two. I am still irked at what seems to me to be a refusal to discuss things honestly. I believe that it is possible for someone to be entirely well-intentioned in their views, but at the same time close themselves off to considering any other viewpoint as valid. They are honest in their intentions, but their protection of their views is not honest.   And THAT, my friends, is what I call disingenuous.



FIRST news: 
Remember the NASA grant that we were so sure we wouldn't get? Well it came through.....$5000 registration paid and now we have a tidy sum laid by for next year/buying parts for this year. Awesomeness all round.

The FRC team in New Jersey whose team captain I'd been bugging to not give up hope: they are fully funded, the money came through in the pinch.

The FRC team in Eugene [whose captain I had also been bugging], is ALSO fully funded: last night, to my frantic enthusiasm, their team captain told me that FIRST actually came through [via our Regional Director] and worked things out. This is wonderful news, it would have been very disappointing to see Eugene not be able to participate.



The other day several members of the robotics team gathered at my place to learn programming [in the lack of anyone who actually is already proficient in C++.....] under the tutelage of a former FRC team member and current computer sci. student. I became quite enthused and have spent the last few days tooling around in Wind River Workbench [where code compile properly] and Xcode [where perfectly legitimate code can't find its libraries and hands me a bunch of error messages].

Today I undertook to copy the WPI libraries [written by Worcester Polytechnic Institute specially for use in FRC] to my Mac [Eddie, running Xcode]. This proved tortuous.....some of the errors have gone, but others have popped up in their place, nevertheless in a way which gives me hope I might some day be able to compile FRC code on a Mac. Because I REFUSE to dual-boot Eddie into Windows or anything like that.

Just for kicks, let's post a sample of code: this, linked against the WPI libraries, should theoretically be enough to run a 120-lb. robot....it even includes a snazzy little user-defined class called, stunningly enough, 'kicker', in attempts to recreate the idea behind last year's soccer-ball-kicking robot.


#include "WPILib.h"
#include "kicker.h"

/**
 * This is a demo program showing the use of the RobotBase class.
 * The SimpleRobot class is the base of a robot application that will automatically call your
 * Autonomous and OperatorControl methods at the right time as controlled by the switches on
 * the driver station or the field controls.
 * Includes kicker.h, Bethany's user-defined class. 
 */ 
class RobotDemo : public SimpleRobot
{
RobotDrive myRobot; // robot drive system, can be controlled by two victors
Joystick stick; // only joystick
Solenoid sol1; //solenoid 1
Victor vic1; //victor 1
Victor vic2; //victor 2 
Kicker kick; //kicker defined in kicker.h 
public:
RobotDemo(void):
// these must be initialized in the same order
stick(1), // as they are declared above.
sol1(1),
vic1(1),
vic2(2),
myRobot(&vic1, &vic2) //pointers to locations of victors
//Kick needs no perameters
{
GetWatchdog().SetExpiration(100); //0.1 seconds
}
/**
* Drive left & right motors for 2 seconds then stop
*/
void Autonomous(void)
{
GetWatchdog().SetEnabled(false); 
vic1.Set(0.5); // drive both motors forward, half speed
vic2.Set(0.5);
Wait(2000);    //    for 2 seconds
vic1.Set(0.0); // stop robot
vic2.Set(0.0);
}
/*Runs the motors with arcade steering. */
void OperatorControl(void) //does this need void parameter? implied with mere ()? 
{
GetWatchdog().SetEnabled(false); //disable Watchdog
while (IsOperatorControl())
{
myRobot.ArcadeDrive(&stick); // drive with arcade style (use right stick [?])
Wait(5); // wait for a motor update time, .005 seconds
//joystick trigger for solenoid
if (stick.GetTrigger()==true) //can also use stick.GetTrigger() [without ==true]
{
sol1.Set(true); 
}
else {
sol1.Set(false);
}
if (stick.GetTrigger()==true) //or stick.GetTriggger() 
{
kick.Release();  //variable.function.....kick [does] release
kick.Kick(true); //if want long kick....kick [does] kicks
}  
else {
kick.Retract(); //retract at all other times
}
}
}
};


START_ROBOT_CLASS(RobotDemo);  //why a macro? I thought macros were bad policy?



Note the copious use of comments [like this: //this is a comment]......I suspect that my fully-commented code will be a wonder, and a thing of beauty and sarcasm. As we know: as a programmer, my job is to write documentation that happen to compile. [Devil's advocate says: never document. If it was hard to write, it should be hard to understand.]  Also: if the robot hasn't burst into flames, the problem is the programmer's fault. Another Chief Delphi quote to round out the evening: We'll defenestrate our programmer, and I'll report back our solution if we get anything working.


First game hint  is out! It has resulted in speculation that the game will
a) involve columnar game pieces
b) take place on stairs
c) be a mash-up of all previous games [FIRST's 20-year anniversary]
d) be related to a 'conjunction' of some sort [planetary or otherwise]
e) incorporate trains, train-tracks, or 'engines' [towed behind robots...but we did that in 2009]
f) loco-motion, the name of the singer in that game hint's major hit, will come into play: crazy == loco....some form of new and terrifying-to-program motion....
g) the game will definitely be called LocoMotion [or perhaps Back on Track]

and...
h) this hint, of course, means water game.


I think the angst I mentioned in the title [admittedly just to get people to read this post..] stemmed from my unwisely trawling through a website the other day which touted a comprehensive 'modesty checklist'....which listed high heels and the hose classically worn with them as immodest. Several commenters mentioned they didn't see why that would be a problem, as they never wear skirts shorter than ankle-length anyway.
Why do I hang out with these people?

On another note, allow me to link to a blog by an amazing young woman who I can, perhaps, agree to disagree with. Bailey's blog,  Big House in the Little Woods.
[One of her latest posts mentions me so I thought it appropriate to link....note that there is at least one other Bethany who comments on her blog, look for the profile pic :) ]

I finally rallied myself to comment on said post.....comment moderation in effect tho, so possibly delayed.  It's quite unusual to find someone who holds a lot of patriocentric views, but is still willing to discuss things honestly.


Annnnnd.....it's Christmas Eve. I'd come out with a homily of some sort but if you're anything like me, you've been bombarded with such for the past few days.

...oh DEAR......my mom and I were just talking about gifts, she mentioned the shortfall of gifts for me [hah, shortfall, not really, I am amazingly fortunate :) ] and I piped up 'The iPod...' [iPod Shuffle, which we arose at an unearthly hour to buy at an early sale]....and then she says 'Oh yes! Except I don't know where that is....'
There is a running joke of gifts and so on getting mislaid in the wrapping-up process. One year it was a flash drive, rubber bands, AND a packet of garden seeds [I was specially keen on those rubber-bands...] and some of them didn't show up for months.
There's also this great herbal lip balm [a Key Point in cold wet weather] that I picked out for myself recently but which ought now to be packed up into my stocking....I came very close to EATING the darned thing after I bought it....yummy rose flavor.....NOM. The label actually says 'Don't eat' with a mention of how nommy it is....hehe.

Fun Fact of the Day: a package carrying goodies [cookies, a cement-like block of homemade fruitcake, and assorted fruit, all packed with care in real Oregon fir branches doubtless harboring horrible foreign bug-pests] can wing its way to the East Coast in.....drum-roll please.....one weekend before Christmas. I shipped it out in a flat-rate box on Saturday and it arrived by Monday....we were all in awe of the superlative US Postal Service. A book-rate package did the same journey in three days I think, irregardless [teehoo] of foul snowstorms and patented 'wintry mix' currently dispersing itself over the continental US!

We are sitting around being happy that we didn't go to California for Christmas [to see my grandparents...we were considering it two weeks ago]......mudslides and evacuations and torrential rain are such fun ways to spend one's Christmas holiday. Earlier in the month, we also had a near escape from heading to Seattle by train for a programming workshop on the same day that Amtrak was shut down due to flooding.

-Dropbox is very, very nifty.
-Dance/electronica/techno music is very fun and Basshunter is a prime specimen of this.
-Pointers are a unique concept in programming which causes me to brood for prolonged periods of time and then burst out with obscure technical references whilst batting the air.
-Full moon causes bad dreams.
-The Voyage of the Dawn Treader was a very good movie and a rather bad book-adaptation. I want screenshots from it though, that was a PRETTY movie in parts.
-I don't really like live-action 3D films.

And now I think I shall adjourn. More posts soon, hopefully.

3 comments:

Anonymous said...

Look up "doctrine" and ask yourself: Is not a doctrine inherently a partisan belief?

"Disingenuous" seems to me just another way to say: "human nature".

Anonymous said...

Sorry. That was uncalled for.

Bethany said...

Hmm, I'm not quite sure how it was called for in the context of the post but I certainly didn't take offense or anything :)

I look back over Stacy McDonald's email to me and I suppose it could be called human nature....but such as I don't encounter very often, fortunately.