Become a fan of Slashdot on Facebook


Forgot your password?

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).


Comment: Re:Tragic technology failure ... (Score 1) 183

by fatmonkeyboy (#47863501) Attached to: In France, a Second Patient Receives Permanent Artificial Heart

Yeah but, in this case, it didn't "just fucking work".

It stopped fucking working, so we had to fucking do something about it.

Maybe, eventually, we'll fucking figure out the fucking sensory & feedback systems, but for now, it's pretty fucking awesome that we can get fucking artificial hearts if we fucking need them.

That said, having fucking wifi connectivity in your fucking heart does sound fucking scary.

Comment: Re:Microsoft Research (Score 1) 117

by fatmonkeyboy (#43719439) Attached to: Microsoft Patents "Cartoon Face Generation"

(1) Not everyone can draw a cartoon version of themselves that would be aesthetically pleasing.

(2) They animate the face to match captured motion.

Now, granted, for (2) they could instead analyze a cartoon face drawn by a human and figure out how to animate it...but I'm guessing you would think THAT was a waste of time as well.

I used to work in creating educational software. Having this technology would have been a boon for some of the stuff we were planning.

You sure are down on what, I think, are interesting research projects. I don't think anyone could have ever been under the impression that Song Smith would or was intended to replace actual composers.

Comment: You train them the same way you train anyone else. (Score 1) 292

by fatmonkeyboy (#43218343) Attached to: Ask Slashdot: How To (or How NOT To) Train Your Job Replacement?

The way you train a "replacement" is the same way you train any new employee on a software team.

Start by giving them small tasks. Let them work their way through your backlog of things you haven't gotten around to doing. Bugs are great candidates for new members of the team. Ease them into the code base. Do code reviews with them before check-ins.

Personally, I like to do some pair programming during the first couple of days to help them set up their development environment and familiarize themselves with how I've been working on the code.

Unless this is a trivial project, you're never going to be able to impart all of the knowledge you have about it. If they're worth anything (and you're worth anything) it won't be so complex that they can't figure out how to extend / maintain it. Your job is to give them a leg up and ease the learning curve.

Be open and honest and helpful. The reality is that this new guy is either able to replace you or isn't. If a novice is able to successfully replace you, maybe the project has matured beyond the need for a senior-level developer and it's time for you to move on.

If that's not the case, it will become abundantly clear in due time and they will treasure you all the more for having seen the difference your skills & experience provide.

Comment: Re:Patterns over hyped? (Score 1) 129

by fatmonkeyboy (#40218761) Attached to: Book Review: Elemental Design Patterns

Depending on the type of work you are doing, it might be that the majority of your architecture is already in place (e.g., web frameworks like Rails). It could also be (as someone else implied) that the patterns are there and you aren't recognizing them. I hope you don't mind, but I checked your profile and it said "java web dev". You're not going to escape using Java for just about anything without using design patterns. You may not be implementing them, but the libraries you are using make use of them extensively.

The "valueOf" function in Java is a static factory method. Why does it matter that it has a name? Because if you and I both know the name, we can discuss it more efficiently.

For instance:

Jill: "You have a lot of different constructors for your class, have you considered using static factory methods to make it more obvious what is going on?"
Bob: "We could do that but maybe we should consider using the Builder pattern instead."
Mike: "Whoa, wait a minute. I think Builder might be overkill for this situation."

If our heroes don't have a common understanding of "static factory method" and "Builder pattern" the discussion becomes more lengthy. Having a common terminology for patterns facilitates discussion.

People can describe a solution to a problem they encountered. Maybe their solution is a known pattern - great! They don't have to describe it themselves, they can point you at a wiki article and then describe how that solution worked in their specific situation. Maybe their solution isn't a known pattern - interesting! They can describe it in relation to other patterns and discuss the pros & cons of their approach versus the others.

You can look up implementations of the pattern in the language / framework you happen to be using and see how other people have approached the problem.

You can read people's thoughts about using the pattern, "Well, we considered but ended up doing something closer to ." Maybe you hadn't even considered "pattern 2" and maybe it's a better solution for your situation.

And if people aren't using the names, you can still sometimes listen to their description of the system and short circuit a whole bunch of (high level) analysis. "Ah...that thing he's taking two pages to describe is a Factory. Got it."

As far as using the patterns as a catalog...yes, that can be a problem. There is real danger of ending up in a "solution looking for a problem" mindset. But, paired with maturity and discipline, familiarity with solutions other people have used for a variety of problem can't hurt.

Comment: Re:Roll the dice, then. (Score 3, Insightful) 165

by fatmonkeyboy (#38690626) Attached to: Ask Slashdot: Advancing a Programming Career?
Just because you are working for someone doesn't mean you are their bitch. Someone with marketable skills will move on to something else if you treat them poorly. Good luck keeping your company going when all of your employees are the kinds of people that don't have any better options.

Comment: Re:Do keep up, dear boy... (Score 4, Informative) 546

by fatmonkeyboy (#31172310) Attached to: Interstellar Hydrogen Prevents Light-Speed Travel?
You are completely and absolutely wrong. Are you getting him confused with someone else? Asimov studied for and received his Ph.D. in biochemistry the standard way. He then worked for the Navy during WWII as a chemist and was later a professor of biochemistry at Boston University. I know all of this because I was a huge fan as a kid (and read his autobiography multiple times). But here's the wikipedia article:

A formal parsing algorithm should not always be used. -- D. Gries