(if you're here for the software mentorship rant, click here to make sure you're seeing the whole thread. experimental cohosting is confusing right now)
this became a thread. For the sake of everyone’s feed, you’re gonna have to read-more instead of skim.
Read More
### does it work? yes, but. ### is it good? ... yes. ### does it break things you find intuitive? yes. ### are there productivity tools that only exist on it, that make people so efficient they cannot use anything else without a noticable slowdown? yes ### does it have behavior that only makes sense with 30 years of context? absolutelyso why use it
because if you need it to do something, with enough patience you can make it do it. Sure, you could have made a specific utility that could do it better, in less time. But you wanted it to be useable outside this one context.
unfortunately, your config has drifted so far from the standard that it is now a unique product, useable only to you, and you are writing plugins for that, and no longer the actual application
At least take this machete.
You'll need it when you find the trailhead someone else started and left unmaintained, forging a path only to let it disappear for those behind them.
and in the end?
You'll be powerless to stop it; who has the spare cycles? Your fork, then too, will be unmaintained. It's just the way of things.
Things move too fast.
After all, that's why you picked the wrong tool in the first place. It was there. Didn't need to get comfortable with something else, or grapple with standards, with maintainers.
it's not like there's a choice at the moment. It's also why there's some things locked in zsh that are now being reimplemented in fish and NuShell, even though having them be external would be even better. But that requires more time.
No one's got time for that.
But at some point we have to realize "If it sucks, hit da bricks" is the reason there's just guns pointed at feet lying everywhere.
I've got some very spicy thoughts about software mentorship, pedagogy, speed-as-elitism, and how by training people to be experts and never using their skills, the industry is not just filtering by class but also monopolizing the brightest minds of other nations to enrich the corporation's instead of their home, when you only recruit those people.
like, much more than just "well yeah that's shareholder capitalism"
jumping from innovation to innovation, abandoning hardware every 3 years, means no one makes it useable and no one knows how anything works, even the people who have that as their job
Read More
but i know i don't have solutions, and like the texts I keep finding dated 2015, 2009, 2005, 1998, 1995, 1989... I fear I too am resigned to simply keeping the lights on, hoping the next people will have the spare cycles to realize, collectively, that the speed is a large part of the problem.
sure you can abstract it as exploitation, poor work life, etc. but it has a root cause that isn't just shareholder capitalism and a lot of that is this idea that everything should accelerate. Exploitation of Moore's Prophecy has outstripped the capacity of most people to learn how to use what they own before it becomes obsolete. Especially the people who don't have technical interests.
maybe i should cloister myself from internet and write the thing on this.
just, not so fast. not immediately.
The thing about software right now is that the industry has convinced everyone that they're looking for a specific list of skills. Coding interviews, while they're slowly changing now, were seen by potential hires as testing their knowledge.
Read More
of course they want you to know the basics, but after like, 2005, the thought leaders in the tech hiring space were looking at your ability to collaborate, ask for help, be honest when you don't know something. a test of problem solving ability. But if you said that out loud, you'd be giving up the game. So other companies latch onto it and start hiring based on what amount to SAT tests, as the low bar.
The guy who released fizzbuzz to the world did it with the statement that was widely interpreted as "sometimes you find someone who just can't code, and this is to weed them out". meaning the problem solving; not the memorization of CS snippets.
But people wanting coding jobs latched onto it literally. there's an entire industry around solving long-solved computer science toy problems and getting meaningless scores from it to put on it resume
the job postings don't help. they're aspirational, if you had those skills already you'd be terrible at the job, comfortable, not striving to learn how to do the thing best.
other companies copy those thinking they're what's actually required to use that technology.
no one knows what they're doing. the trade, the craft, the industry, isn't putting the text on the page. If it was, well, let's just say after a year of instruction, pretty much anyone can follow a tutorial that gives them the commands to write.
no, the knack is problem solving.
your skills can transfer to other things, you just have to figure out how to know enough about the other field to apply your old skills to it.
it's also learning, often accidentally, since that comes from the problem solving loop
I know a lot of us know this, we're treading old ground. but setting a scene is important
so we've got:
- computer science problems used to evaluate people
- that they only learn about through university
- or hearing through word of mouth to read the right books
- who then practice a lot for it
- only to find that what it really did was set them back.
- but generally they don't know that. they just see it as part of the work culture
now, people ace that test but often have no ability to problem solve or collaborate on the fly once they get in. the interview was pantomime, they were told it was so important so they practiced every step, inadvertently concealing the one thing it was testing for.
That's not to say problem solving is something you should test for.
instead
Read More
so these companies have mentorship programs, official or unofficial, which basically act to bootstrap this key skill
-
that university didn't teach because it stressed CS, assuming people will just stumble on problem solving skills or drop out
-
and self learning rarely teaches because the only people with consistently enough time to write about career seeking stuff are other people either looking to join the industry, or people who just did, since it's fresh in memory.
it's very backwards.
See, the key mistake of the software industry is not realizing that the code is just writing. it's not what matters.
Did you know? the US Air Force, now and especially during the cold war, will spend hundreds of millions of dollars to recover a downed airman.
You'd think that's for morale reasons. An understandable assumption -- many might be more likely to risk their lives willingly if they knew they wouldn't be left alone.
But that's just a side effect. The pilot is the final product of everything the airforce put into them and more:
Read More
- every meal - every instructor - every training - every lesson - every hour of maintainance on their trainers and planes - every pound of fuel they burned - every story they've listened to - every experience they've had - every lesson of every battle they've ever experienced that the air force would have to do again, for just as many years, to bring someone else to their level. just the oral history they save is worth the cost, and the risk.They tell you that if something happens and there's any chance fixing the malfunction could kill you and the plane, you don't gamble, you choose the plane and eject.
in 2018 I had a frank talk with someone I'd been mutuals with on Twitter. a hiring manager at one of the big five of the time.
they said they hire based on potential more than correctness.
I wish most managers saw it that way. Instead, even there, the myths get reinforced, at least on some teams.
mentorship needs to be proactive, it needs to be focused on problem solving, collaboration, and "teaching someone how to learn".
I don't know if there's any curriculum like it. you'd need to assume basically no knowledge of math past algebra, maybe even then. could teach the advanced math with python, writing it out, introducing the concepts by writing the functions, which is a better way to learn than just using the symbols and taking their word for it. but you don't focus on the code.
figure out a way to teach people to learn via doing, and do via Web Search
then teach them how to do the job, after you hire them. ideally do all of this after you hire them. no other industry is like this one, where there only path into it isn't actually taught until you get there or stumble on it.
anything else is just shooting ourselves in the foot, just like I read about in 1974.
Read More
so many jobs are being eaten by the industry. the best thing you could do is have union halls that teach this. the second best is to make it embarassing for the companies not to be doing it. basically no other industry works this way outside of the other heavily exploited industries like TV, music, publishing, movies. The only way you change course is by changing the game.
at least, from where I'm looking. and from where every post in this vein in the last 50 years was looking.
I know this is also what every teacher has cried themselves to sleep trying to figure out how to make people learn this when it's already so hard to teach people prepackaged things, with everyone being so individual in their learning. But i think some of that is that we give people everything and say, learn this or else, and then they guess the password and if it's right we praise them. certainly no one else in my k-12 cohort was actually taught how to learn, from the posts I see of people constantly slowly painfully having to figure it out in adulthood
I know this post isn't enough either. it's not a solution. just a redefinition of the problem space.
but because I had to stumble on those posts myself, each of them usefully different all the way back to 74, I also know the value of just helping keep the lights on.
sometimes all you can do is keep the lights on. The people who come after need to see the mess, eyes open.
The guy who, when I was barely a teen, gave this machete to me twenty years ago, said I could get anywhere with it. I don't think he understood that with it, all you can do is make hack after hack to get past things that don't want you there, because they weren't built for you, or people, really. you hack around it. your tools don't work, you hack around them. solve the new problems. never time to make things such that there's no need to hack around them.
Anyway. It's yours now. I hope you find it useful. Don't forget to do the hack to rebind the alt key. your tool will maim you otherwise.
I've got more thoughts. if i waited for them to be complete I'd never post them. I wrote all these thoughts and more in a very artistically formatted way, they just sat there for weeks
Read More
it's when I realized that no one cares about the editing or even the css tricks. sure, they aid readability, but not enough to matter and I would agonize over them.
That's what wordpress is for. but you don't read me for that. you read me because half my shit here is unhinged, in the sense that when the door is blocked, popping the hinge pins is the easiest way through a door, as long as you can find them.
speed is evil. savor the technological advances enough to know you need more before going higher. for every part of every industry. your sanity, your body, depends on it.
the world does too. both ecologically and sociopolitically. a lot of nations spend so much staying on the treadmill that they aren't actually getting return on investment.
a lot of people even in the wealthy nations are dealing with the same, generally in the "lower half" of the working class and lumpen.
and it sucks how many people you'll need to convince to even start things
sometimes things are just fucked. they're fucked and you know they've been fucked for years. they were fucked when you first got there. you first realized no one knew what they were doing, and just how fucked everything was, right about when computers lost their magic. when you could look at something and know what the pieces would need to be, even if you don't know how to make the pieces. every year you learn it was more fucked than you thought.
you're, in all likelihood, either struggling badly or lived through having to do that; everything you do isn't enough for your sick company.
your sick shareholders. your body made sick by the job. or made sick from them demanding you come visit them.
sick companies make sick people make sick software. no one learns anything, they're too busy learning the next thing only to abandon it three years later, so even institutional knowledge doesn't exist
most people don't document how they learn anything. they don't have the time, the energy, it's too much. too slow. those who do have their posts shared for years, decades. I learned a new way of thinking from a post in 2005 which solved my blocker. turned out the world changed, no one wrote it down, and I had to spend double the time I struggled just to undo it. no one has the time
programming language package managers keep having this problem with people introducing malware to their previously submitted packages. no one has the time to audit any of it, so it just does millions of dollars in damage every time. then there's time, just never for the next one.
none of these posts are about software, the writing thereof, or the industry that encompasses them
they're about starting to think about breaking the cycle, in so many different ways you could read that phase
I don't have the spare time to do it, at least not consistently. I don't have the energy. I'm sick, sick world, sick industry, sick people, sick machines. like the machines im made tired every time I have to think hard, burning most of my energy from elsewhere, other people, maintainance too hard for those who's ostensible job it is to do that. I simply cannot give to the project anything but trailheads, at least for now.
and warn you about the temptation of machetes. they'll let you hack through anything. slowly. in ways people can't usefully follow, outside of learning from what you leave in your wake. and if you don't hack to change where the alt key is, they'll ruin your hand in the blink of an eye.
is, and I don’t even know if this is only with hindsight or actually in their documents — it doesn’t matter, that they were smashing the machines because they knew that the way of the world isn’t to help them.
The machines, automation, could help them, could mean they do less work for the same hours, or more production for less effort over those hours.
But instead, they knew that the breakthroughs would instead make them work just as long, for just as hard if not harder, because they’re just a battery to the business owners.
Thinking a lot about how tooling has made coding so much easier but you’re forced to take on more and more of these easy things, as your life ostensibly gets easier. Job doesn’t get easier as you grow in career, you just produce more. ‘you don’t get better, you just get faster’ means something much different when it’s not about cycling.
anyway, everyone already knows this stuff. I’m just continuously angry at things, since I have a fatigue disorder that means things being easier still doesn’t actually mean i can have a job and simultaneously have the ability to do anything at all outside of work but recover. And that was true before everyone was getting long-COVID, it’ll become existential in a few years.
