Comment author: fubarobfusco 09 February 2014 08:30:58PM 4 points [-]

Finally, if (salaried) employees working long hours is just them trying to signal how hard working they are, at the expense of real productivity, it's a bit surprising managers haven't clamped down on that kind of wasteful signaling more.

I'm not sure that "X is wasteful signaling and hurts productivity" is very strong evidence for "managers would minimize X".

One manager I used to work for got in some social trouble with his peers (other managers in the same organization) for tolerating staff publicly disagreeing with him on technical issues. In a different workplace and industry, I've heard managers explicitly discuss the conflicts between "managing up" (convincing your boss that your group do good work) and "managing down" (actually helping your group do good work) — with the understanding that if you do not manage up, you will not have the opportunity to manage down.

A lot of the role of managers seems to be best explained as ape behavior, not agent behavior.

Comment author: DaFranker 11 February 2014 01:15:19PM 0 points [-]

A lot of the role of managers seems to be best explained as ape behavior, not agent behavior.

Localized context warning needed missing here.

There's also other warnings that need to be thrown in:
People who only care about the social-ape aspects are more likely to seek the position. People in general do social-ape stuff, at every level, not just manager level, with the aforementioned selection effect only increasing the apparent ratio. On top of that, instances of social-ape behavior are more salient and, usually, more narratively impactful, both because of how "special" they seem and because the human brain is fine-tuned to pick up on them.

Another unstudied aspect, which I suspect is significant but don't have much solid evidence about, is that IMO good exec and managerial types seem to snatch up and keep all the "decent" non-ape managers, which would make all the remaining ape dregs look even more predominant in the places that don't have those snatchers.

But anyway, if you model the "team" as an independent unit acting "against" outside forces or "other tribes" which exert social-ape-type pressures and requirements on the Team's "tribe", then the manager's behavior is much more logical in agent terms: One member of the team is sacrificed to "social-ape concerns", a maintenance or upkeep cost to pay of sorts, for the rest of the team to do useful and productive things without having the entire group's productivity smashed to bits by external social-ape pressures.

I find that in relatively-sane (i.e. no VPs coming to look over the shoulder of individual employees or poring over Internet logs and demanding answers and justifications for every little thing) environments with above-average managers, this is usually the case.

Comment author: FeepingCreature 03 February 2014 11:36:54PM 0 points [-]

absolutely horrible back-twisting wedge of slipperiness

I put a blanket over my chair. It seems to work.

Comment author: DaFranker 07 February 2014 03:17:45PM 1 point [-]

In practice, this is relevant once you've already bought a chair and want to maximize the comfort you can get from it, balanced against the difference of comfort you could buy & chance of getting that comfort (or some lower value, or some higher) & money you'd need to spend.

When purchasing a new chair, I don't think this will be an important factor in the overwhelming majority of situations.

Comment author: [deleted] 07 February 2014 01:27:02PM *  0 points [-]

In response to comment by [deleted] on Maximizing life universally
Comment author: DaFranker 07 February 2014 02:15:16PM 3 points [-]

This seems like it falls face-first, hands-tied-behind-back right in the giant pit of the Repugnant Conclusion and all of its corollaries, including sentience and intelligence and ability-to-enjoy and ability-to-value.

For instance, if I'm a life-maximizer and I don't care about whether the life I create even has the ability to care about anything, and just lives, but has no values or desires or anything even remotely like what humans think of (whatever they do think of) when they think about "values" or "utility"... does that still make me more altruistically ideal and worthy of destroying all humanity?

What about intelligence? If the universe is filled to the planck with life, but not a single being is intelligent enough to even do anything more than be, is that simply not an issue? What about consciousness?

And, as so troubling in the repugnant conclusion, what if the number of lives is inversely proportional to the maximum quality of each?

Comment author: Antiochus 03 February 2014 04:31:07PM 7 points [-]

How much is it worth spending on a computer chair? Is a chair for both work and play (ie video games) practical, or is reclining comfort necessarily opposed to sit-up comfort?

Comment author: DaFranker 03 February 2014 07:11:42PM *  4 points [-]

In an attempt to simplify the various details of the cost-benefit calculations here:

If you spend:

  • 1-2 hours on this chair per day: Might be worth spending some time shopping for a decent seat at Staples, but once you find something that fits and feels comfortable (with some warnings to take in consideration), pretty much go with that. You should find something below 100$ for sure, and can probably get away with <60$ spent if you get good sales.

  • 3-4 hours / day: If you're shopping at Staples, be more careful and check the engineering of the chair if you've got any knowledge there. Stuff below 60$ will probably break down and bend and become all other sorts of uncomfortable after a few months of use. If your body mass is high, you might need to go for solidity over comfort, or accept the unfair hand you're dealt and spend more than 150$ for something that mixes enough comfort, ergonomy and solid reliability.

  • More than 4 hours / day on average: This is where the gains become nonlinear, and you will want to seriously test and examine anything you're buying under 150$. At this point, you need to consider ergonomics, long-term comfort (which can't be reliably "tested in store" at all, IME), reliability, a very solid frame for extended use that can handle the body's natural jiggling and squirming without deforming itself (this includes checking the "frame" itself, but also any cushions, since those can "deflate" very rapidly if the manufacturer skimped there, and therefore become hard and just as uncomfortable as a bent chair), and so on. At this point, the same advice applies as shopping for mattresses, work boots, or any other sort of tool that you're using all day every day. It's only at this point where the differences between more relaxed postures, "work" postures and "gaming" postures starts really mattering, and I'd say if you actually spend 6-8 hours per day on average on this chair, you definitely want to go for the best you can get. How much that needs to cost, unfortunately, isn't a known quantity; it depends very heavily on your body size, shape, mass, leg/torso ratio, how you normally move and a bunch of other things... so there's a lot of hit-and-miss, unfortunately, unless you have access to the services of a professional in office ergonomics. Even then, I can't myself speak for how much a professional would help.

Comment author: shminux 03 February 2014 05:44:13PM *  -1 points [-]

I have always been able to find a comfortable computer (arm)chair for $100 or less, usually on sale at Staples.

Comment author: DaFranker 03 February 2014 06:10:57PM 1 point [-]

Beware that you need to "try" these chairs, and you need to pay attention to clothing when you try them too. A chair that's super comfortable with jeans and a winter coat might turn out to be an absolutely horrible back-twisting wedge of slipperiness once you're back home in sweatpants and a hoodie. Or in various more advanced states of undress.

Comment author: CellBioGuy 14 January 2014 05:48:16PM *  9 points [-]

The dreaded answer: 'Well, it depends..."

The genetic code - the relationship between base triplets in the reading frame of a messenger RNA and amino acids that come out of the ribosome that RNA gets threaded through – is at least as ancient as the most recent common ancestor of all life and is almost universal. There are living systems that use slightly different codons though – animal and fungal mitochondria, for example, have a varied lot of substitutions, and ciliate microbes have one substitution as well. If you were to move things back and forth between those systems, you would need to change things or else there would be problems.

If you avoid or compensate for those weird systems, you can move reading frames wherever you want and they will produce the same primary protein sequence. The interesting part is getting that sequence to be made and making sure it works in its new context.

At the protein level, some proteins require the proper context or cofactors or small molecules to fold properly. For example, a protein that depends on disulfide bonds to hold itself in the correct shape will never fold properly if it is expressed inside a bacterium or in the cytosol of a eukaryotic cell – it has to contain the destination-tag that causes it to be secreted into the membrane-bound spaces of the ER compartment that are kept as an oxidizing environment where such bonds can form.

At the translation level, eukaryotes and eubacteria have developed divergent methods for bringing the RNA and ribosome together, and keeping the RNA stable. Eukaryotes automatically add a chemically modified 'cap' to the front end of all RNAs they make, and require the presence of a particular sequence after the reading frame that allows everything after that point to get chopped off and replaced with a bunch of As (which the ubiquitous RNA-destroying enzymes mostly ignore). Proteins coat the poly-A, interact with cap-binding proteins, and this complex massively increases the rate at which the capped end gets fed into the ribosome. Eubacteria on the other hand do neither of these things, and a ribosome will bind to any point on the RNA that a particular ribosome-binding sequence appears allowing them to have multiple reading frames in the same RNA molecule under identical genetic control. If you don't put in all the proper elements you will still get protein but less than you could have.

There's also introns to consider. Eukaryotes cut these intervening sequences within the reading frames out, but different eukaryotes have slightly different machinery for recognizing them, so what is properly sliced out in one organism might not be in another. And if you put one into a bacterium it won't be spliced at all. We solve this by any time that you are moving things around between different systems, only moving around the processed reading frame with no introns. (Though it turns out that the presence of introns actually increases the rate of export of the RNA from the nucleus to the rest of the cell for translation because export is coupled to splicing, but it's not necessary, it just speeds it up.)

Everything said so far is actually quite easy to deal with, you just need to make sure that your favorite reading frame has the right basic elements around it for its new context. The big thing is making sure that your gene is actually expressed in its new context. You need to put in the right promoter elements upstream that bind the proteins necessary to both tag the DNA as to-be-read and anchor an RNA polymerase to actually make the transcript. In my lab we mostly just use existing promoters from other genes in yeast, but one of my labmates has actually used synthetic promoters with artificial activators around the stripped-down core of a natural promoter element to make a synthetic genetic oscillator. In animal cells people love using viral promoters because they are very strong and smaller than normal animal promoters, which can get rather large and are sometimes fragmented (especially into the introns), but normal promoters can be used too. The mileu of the cell will dictate if a certain promoter element is recognized and expressed – if the cell is making the right proteins that bind to and activate it, etc. We actually use that sometimes, putting a reading frame in front of say one of the GAL gene promoters that only turn on when you feed yeast galactose. Theres lots of post-transcriptional regulation of RNA stability too.

You also have to be careful about where you put things relative to other genes and other chromosomal features. If you put a transgene too close to a eukaryotic centromere (attachment point for fibers that pull chromosomes apart during cell division) it will not be expressed because the centromere condenses and silences DNA around it for quite a distance. If you stick two small promoter elements driving genes right next to each other, they can interact and wind up affecting each other's expression (I've been having problems with this in my yeast). If you stick two genes very close to each other (second promoter right after the first reading frame) in series reading in the same direction on the DNA, unless you add a good 'terminator' element between them that makes the RNA polymerase fall off before it reads over the promoter of the second gene, the second gene's expression can be somewhat suppressed because reading through its promoter keeps knocking off the proteins necessary to launch another polymerase down it.

On top of all these things, there are all kinds of dirty tricks that are rare but existent, like a gene in yeast where the 3-base reading frame suddenly stutters one base over halfway through the gene due to a 'pseudoknot' structure the RNA folds up into combined with a very rare codon that takes a long time to translate, letting the RNA slip one base over within the ribosome to a more common faster-translating codon before it actually reads the slow one. An individual gene probably doesn't use such a dirty trick but they are around and if one exists you can bet some virus somewhere uses it – they do horrifying things with their nucleic acids to pack in overlapping genes or genes that make different things in different circumstances.

edit: that 'dirty trick' is sort of a special case of a wider-seen thing, where the relative concentration of different tRNA adapter molecules that constitute the actual mechanics of the genetic code affects how quickly different proteins are translated. Even in different organisms with the same code, two synonymous codons might have very different levels of the tRNA adapters in the cell and one could be translated a lot faster than the other in one organism. Sometimes we codon-optimize genes for particular organisms so that the gene is more efficient, but that can get expensive and sometimes it has bad side effects: our lab did that with the firefly luciferase gene that makes a luminescent protein, and it turned out that when it was translated extremely fast parts of the protein that normally folded independently one at a time interacted and folded together, screwing up its function.

In the end, what we always wind up doing is simplifying things. If you need to move things between very different contexts you strip a gene down to its uninterrupted reading frame and move that around with promoter elements and translation-enhancing elements appropriate to its new context. You make sure you have nice terminators and a little space between things. And try to insert things into known locations that you know work rather than randomly. Artificial regulation of a gene rather than using a natural promoter often leads to coarsely controlled expression because it hasn't been optimized with all the subtle tricks, but you can almost always get them to work.

There are always surprises though. Otherwise it wouldn't be research.

Comment author: DaFranker 21 January 2014 02:08:31PM 1 point [-]

That was an awesome breakdown of things, thank you!

I've learned way more from this than from all my previous reading, without even including the data about what I didn't know I don't know and other meta.

Comment author: NancyLebovitz 14 January 2014 12:57:24AM 1 point [-]

I think it would be a very good idea to analyse what you're doing, and probably valuable to have some transcripts of sessions-- what you think you're do may not be what you actually do.

Do you teach in person? By phone? I'm wondering how much you use subtle clues to find out what your student is thinking.

Comment author: DaFranker 21 January 2014 01:37:38PM *  1 point [-]

Usually, in person (either as a tag-team or "I'll be right over here, call me when you're stumped" approach; I've experimentally confirmed that behind-the-shoulder teaching has horrible success rates, at least for this subject), though a few times by chat / IM while passing the code back and forth (or better yet, having one of those rare setups where it's live-synch'ed).

TL;DR: Look at examples of wildly successful teaching recipes, take cues from them and from LW techniques and personal experience at learning, fiddle a little with it all, and bam, you've got a plan for teaching someone to program! Now you just need pedagogical ability.

My general approach is to feel out what dumb-basics they know by looking at it as if we were inventing programming piecemeal, naturally with my genius insight letting us work out most of the kinks on the spot. I also go straight for my list of Things I Wish Someone Would Have Told Me Sooner, the list of Things That Should Be In Every Single So-Called "Beginner's Tutorial To Programming" Ever, and the list of Kindergarden Concepts You Need To Know To Create Computer Programs -- written versions pending.

For instance, every "Beginner's Tutorial to Programming" I've ever seen fails to mention early enough that all this code and fancy stuff they're showing is nice and all, but to actually have meaningful user interactions and outputs from your program to other things (like the user's screen, such as making windows appear and put text and buttons in them!) you have to learn to find the right APIs, the right handles and calls to make, and I've yet to see a single tutorial, guide, textbook, handbook, "crash course" or anything that isn't trial-and-error or a human looking at what you did that actually teaches how to do that. So this is among the first things I hammer into them -

"You want to display a popup with yes/no buttons? Open up the Reference here, search for "prompt", "popup", "window", "input" or anything else that seems related, and swim around until you find something that looks like it does what you're doing, copy the examples given as much as possible in your own code, making changes only to things you've already mastered, and try it!"

...somewhat like this, though that's only for illustration. In a real setting, I'd be double-checking every step of the way there that they remember and understand what I told them about Developer References earlier on, that their face doesn't scrunch up at any of the terms I suggest for their search, that they can follow the visual display / UI of this particular reference I'm showing them (I'm glaring at you, javadoc! You're horribly cruel to newbies.) and find their way around it after a bit of poking around, and so on.

Obviously, that's nowhere near the first things to tackle, though. Most tutorials devote approximately twelve words to the entire idea of variables, which is rather ridiculous when contrasted with the fact that most people barely remember their math classes from high school, and never had the need or chance to wrap their head around the concept of variables as it stands in programming. Just making sure a newbie can wrap their mind comfortably around the idea that a variable won't have a set value (I pointedly ignore constants at that point, because it's utterly, completely unnecessary and utterly confusing to mention them until they have an actual need for them, which is way way way waaaaaaaay later - they can just straight-up leave raw values right in the source code until then), that a variable will probably change as the program works, that it won't change on its own but since programs get big and you can't be sure you won't have anything else ever changing it you should always assume it could change somewhere else, etc. etc. etc. There are so many concepts that already-programmers and geeks and math-savvy people just gloss right over that obviously those not part of those elites aren't going to understand a thing when you start playing guerilla on their brain with return values, mutable vs immutable, variable data types, privates and scopes, classes vs instances, statics, and all that good stuff.

Buuut I'm rambling here. I suppose I just approach this as a philosophical "blend" between facilitating a child's wonder-induced discovery of the world and its possibilities, and a drill sergeant teaching raw recruits which fingers to bend how in what order and at what speed to best tie their army boot shoelaces and YOU THERE, DON'T FOLD IT LIKE THAT! DO YOU WANT YOUR FINGERS TO SLIP AND DROP THE LACE AND GIVE YOUR ENEMY TIME TO COME UP BEHIND YOU? START OVER!

Of course, it might be my perspective that's different. I was forewarned both by my trudging, crawly, slow learning of programming and by others about the difficulty of teaching programming, and as silly as it might sound, I have a lot more experience than the average expert self-taught wiz programmer at learning how to program, since I took such a sinuous, intermittent, unassisted and uncrunched road through it.

Anecdotally, I think I've re-learned what classes and objects were (after forgetting it from stopping my self-teaching for months) at least eight times. So I have at least eight different, internal, fully-modeled experiences of the whole process of learning those things and figuring out what I'm missing and so on, without anyone ever telling me what I was doing or thinking wrong, to draw from as I try to imagine all the things that might be packed and obfuscated in all the abstracts and concepts in there.

Comment author: Oscar_Cunningham 20 January 2014 09:45:29AM 11 points [-]

I'm finding this conversation and I don't know why.

You accidentally a word, I think?

Comment author: DaFranker 20 January 2014 02:06:18PM 28 points [-]

If you speak the words fast enough and with enough conviction, your audience's brain will fill in the gap with whatever pleases them while you retain full plausible deniability. Win!

Comment author: [deleted] 17 January 2014 06:00:12AM *  11 points [-]

productivity tool: race

My first thought: well, that's putting it rather bluntly... Oh, ze's probably referring to the competitive time thing.

And I will do better with training.

Bahahah. Your current neurochemical high will wear off in 2 days.

In response to comment by [deleted] on Productivity tool: race!
Comment author: DaFranker 17 January 2014 01:11:56PM 15 points [-]

­Bahahah. Your current neurochemical high will wear off in 2 days.­

This should be written in bold red letters on the fourth cover of every motivation and productivity book or guide.

Comment author: Calvin 13 January 2014 03:59:49PM 0 points [-]

Am I going to have a chance to actually interact with them, see them grow, etc?

I mean, assuming hypothetical case where as soon as a child is born, nefarious agents of Population Police snatch him never to be seen or heard from again, then I don't really see the point of having children.

If on the other hand, I have a chance to actually act as a parent to him, then I guess it is worth it, after all, even if the child disappears as soon as it reaches adulthood and joins Secret Society of Ineffective Altruism never to be heard from again. I get no benefit of care, but I am happy that I introduced new human into the world (uh... I mean, I actually helped to do so, as it is a two-person exercise so to speak). It is not ideal case but I am still consider the effort well spent.

In ideal world, I still have a relation with my child, even as he/her reaches adulthood so that I can feel safer knowing that there is someone who (hopefully) considers all the generosity I have granted to him and holds me dear.

P.S. Why programing of Azathoth? In my mind it makes it sound as if desire to have children was something intristically bad.

Comment author: DaFranker 13 January 2014 09:03:53PM 1 point [-]

Thanks for the response! This puts several misunderstandings I had to rest.

P.S. Why programing of Azathoth? In my mind it makes it sound as if desire to have children was something intristically bad.

Programming of Azathoth because Azathoth doesn't give a shit about what you wish your own values were. Therefore what you want has no impact whatsoever on what your body and brain are programmed to do, such as make some humans want to have children even when every single aspect of it is negative (e.g. painful sex, painful pregnancy, painful birthing, hell to raise children, hellish economic conditions, absolutely horrible life for the child, etc. etc. such as we've seen some examples of in slave populations historically)

View more: Prev | Next