6 ms·
> I want to work somewhere again that sees engineering software as a craft again. If you find this place, will you tell me? I will come work with you. I admit
by travisgriggs 4y ago
> I want to work somewhere again that sees engineering software as a craft again.
If you find this place, will you tell me? I will come work with you.
I admit though, that I struggle to codify what “coding as a craft” is. And that worries me. I fear I am really just playing a game of “I’ll describe it when I understand it” up-over-that-next-hill-ism with myself that is illusory and delusional.
- TedDoesntTalk 4y ago> I struggle to codify what “coding as a craft” is It means working with people who care about the quality of their work.
- pdxandi 4y agoDoes caring about the quality actually mean the quality is good? Maybe it doesn’t even matter. If the team cares and they are satisfied with what the quality of what they are building, maybe that’s enough?
- TedDoesntTalk 4y agoYes, that’s enough for me. Intent is everything to me. You’re free to have a different opinion :)
- no_wizard 4y agoClosest I ever got was working at Apple, and even then it was due to the fact I was on a very specific type of team, so I don't know if it was common case or not. I hear Google is largely like this, but who knows anymore. I hear mixed things all the time. It feels like you have to find a specialized company that may be immune to certain pressures and likely top of their field or the only company really in their given market sector. Maybe Oxide Computer? I think Supabase might be like this, given their marketing and hiring materials, but its hard to say. They're in a "long game" (according to their founder) so they think more long term. That tends to be a good indicator of this, I think, is seeing long term horizons over quarterly ones.
- xyzzyz 4y agoGoogle used to be like this, but now, though some isolated pockets remain, is not like that anymore. A good mental model of how Google internally works today is Microsoft, but with free food.
- wnolens 4y agoMy time at Microsoft was learning a craft from old guys who were there in "the beginning". I'm so grateful for the hours spent on a whiteboard with a patient sage explaining to me how things work. My code reviews were 10 iterations until I learned to do a better job. Very high bar. Even comments had to be full English sentences. I miss it. AWS is the opposite.
- rochak 4y agoNot sure I agree with your experience at AWS. For me, my teammates have been super critical, always trying to raise the bar and looking for ways to make things better. So, all I’ll say is that it is very team specific and you can find good and bad teams at every company.
- kiwicopple 4y ago{supabase founder} We're fortunate to have started at a time when VCs were incredibly irrational (read: good for founders), and even more fortunate to have found a lead investor that's patient. We've been able to build Supabase our own way: hire the right people (mostly international), focus on what developers want (even though they don't pay much), and build open source (collaborating rather than competing). None of these are controversial until you have a profit-maximising VC breathing down your neck. > They're in a "long game" (according to their founder) I stand by this. It's a decade-long endeavour to build credibility as a database company and that's not something we can hurry.
- no_wizard 4y agoPerhaps we should talk :)
- Clubber 4y ago>I struggle to codify what “coding as a craft” is. It means different things for different people, but for me, it means: Step one is getting it to work, step two is making is as simple/clean as possible (most people stop at step 1 it seems). Take time to fix issues / sloppy code when you see it. Ideally you want the codebase to look like it was all written by one person. Carefully balance maintainability vs speed or cleverness. Refactoring is a necessity and should be done periodically. Same with tuning. Take the time to name your methods/classes/variables as accurately, verbosely and consistently as possible. Test your shit for bugs before you give it to QA, for the love of everything holy. If QA sends something back, you should feel a little embarrassed. Take the time to write useful comments. Focus on intent, that way the next person can know if the code is doing what it's supposed to or not. KISS, DRY, YAGNI. The best test is when I come back to my own code I wrote 6 months ago and if I say, "who the hell wrote this shit?!" and it's me, I need to clean it up.
- bluedino 4y agoWhat's the quote about writing a shit program and then thinking you're clever when you fix SOME of the bugs it has?
- cgrealy 4y agoI 100% agree with all of that. That’s how you make good software in a sustainable business. Unfortunately, that’s not how the market works anymore. Do the minimum, get to market first, hype features over reliability and performance, get a nice looking balance sheet, and cash the fuck out. I love writing software, but I hate this industry.
- throwaway2037 4y agoYou wrote: <<The best test is when I come back to my own code I wrote 6 months ago and if I say, "who the hell wrote this shit?!" and it's me, I need to clean it up.>> Up vote on this! I do it once a week -- at least. First, I am frustrated by some unreadable logic, then I look at Git blame... "Oh..." Second, fix it... again!
- marshray 4y ago> codify what “coding as a craft” is It means you produce something that works, has some consistency of organization, and most importantly: other developers will be able to come behind you to support and extend it.