@jasongorman@mastodon.cloud
@jasongorman@mastodon.cloud avatar

jasongorman

@jasongorman@mastodon.cloud

Software developer, trainer and mentor at Codemanship. Now run your tests.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

What do I think of DORA metrics? I saw them being name-checked in Forbes magazine. That's a red flag.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

It's 2023 and people are still telling new developers that "TDD doesn't work". You and I both know they really mean "I can't do TDD, but I don't want you to know that"

jasongorman, to random
@jasongorman@mastodon.cloud avatar

These days, I define "wealth" as "unproductive money"

jasongorman, to random
@jasongorman@mastodon.cloud avatar

In his review of Refactoring Databases 18 years ago, @mfowler wrote: "After my refactoring book appeared I was delighted to find sophisticated tools appear with automated many refactoring tasks. I hope the same thing happens with databases, and we begin to see vendors offer tools that make continual migrations of schema and data easier for everyone."

Would be great to get a "state of the art" in 2024 on that. What tools have you used? How did you find using them?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Are we just beginning to wonder, in regards to persistence, if it might actually be the programming languages that have got it wrong?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Someone on LinkedIn (where else?) is claiming that Instagram has "almost 0 automated tests". Is that true? Are Instagram literally relying on manual testing for their hundreds of merges a day? No automated unit tests, or integration tests or system tests?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

We spend roughly 10x as much time reading code as we do writing it. A tool or technique that makes you twice as "productive" at writing code at best makes you 5% more productive over all. Making your code easier to understand will have 10x the impact. But that doesn't sell tools or put developers out of work, so you won't be reading about it in Forbes.

jasongorman, to random
@jasongorman@mastodon.cloud avatar
jasongorman, to random
@jasongorman@mastodon.cloud avatar

Before you post your slide deck explaining how to detect violations of the Interface Segregation Principle in Swift, don't forget to look up "Interface Segregation Principle"

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Small, autonomous teams of mostly highly-skilled developers, working closely with customers, doing frequent small releases of working software that's being continually tested.

Or...

Big teams of mostly inexperienced developers being micromanaged by people with no dev experience, working several degrees removed from customers, doing large infrequent releases of buggy software that gets tested late in the day by a separate team.

It's fascinating to watch orgs deliberately choosing the latter.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

"The industry push for TDD..."

Less than 2% of developers actually do Test-Driven Development.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

If musicians were devs:

"I'm a Fender Stratocaster player, with 10 years' experience playing major chords, minor chords, 7th chords,, the major scale in A, E and D, the blues scale in A, E and D (see my leetnote and shredderrank profiles for all the scales and chords I know). My tech stack experience includes Marshall Plexi and JCM amps, BOSS Blues Driver (BD-2), EHX Memory Man, BOSS Chorus CE-2, Dunlop Cry Baby.

What kind of music do I play? I'm sorry. I don't understand the question."

jasongorman, to random
@jasongorman@mastodon.cloud avatar

"The private sector is where all the innovation happens", he posted using a protocol developed at CERN built on top of communications technology developed by ARPA, on a device powered by technology created for the US Air Force and NASA in the 1960s.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Need to refactor legacy code to make it unit-testable, but manual testing's cumbersome and error-prone? Comparing the system output to a "golden master" can act as a temporary test harness to speed things up. https://youtu.be/LPmgROCaHy0

jasongorman, to random
@jasongorman@mastodon.cloud avatar

I keep hearing that working remotely will ruin a junior developer's career because they'll miss a lot of important learning without those "water cooler moments" and I can't help feeling that any profession which relies on random social interactions to instill the foundations has bigger problems.

Also, when are we going to let go of the assumption that working remotely = working alone?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

I'm a fan of establishing a logical user experience before a physical one, and that's been considered a good way to do it for 3+ decades. e.g., essential use cases: describe the semantics of interaction design ("submit the mortgage application") before the syntax ("click the 'Submit' button on mortgageapplication.aspx"). So it's awkward that all the tools & tech around UX work the other way around.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

So, as far as I've been able to ascertain, "custom GPTs" are essentially conversations that users join half-way through. Given my experience with GPT 3.5-4, that's right around the point in the conversation where it starts to "drift". It's best at short one-to-three hit interactions. If you didn't get what you wanted by then, you ain't getting it.

There's a sort of statistical gravity in the conversation where newer text outweighs previous text. It forgets quickly.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

More LinkedIn pears of wisdom, this time from a QA manager accusing me and others of trying to get rid of testers: "The ultimate goal of XP folks is to remove every other professional other than developers. This is well-known."

jasongorman, to random
@jasongorman@mastodon.cloud avatar

When I have some downtime, I'm going to go through my LinkedIn connections and purge all the profiles that are obviously not real people.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

The purpose of junior developers is to grow into senior developers. Replacing them with "A.I." is like replacing all your unripened tomatoes with pasta sauce. There'll be a shortage of ripe tomatoes - and pasta sauce - come next season.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Thought experiment: your company asks candidates to take a technical test (e.g., a knowledge test, a programming challenge) before inviting them for interview. Is there any qualification or experience that would make you decide "This candidate doesn't need to take the test"?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Is there any research out there that relates code usage to code change? My instinct says that code that gets used more often changes more often. I've done a couple of small-scale exercises on this with client systems (so I'm 95% confident when I tell teams "Code that gets used gets changed"), but is there a bigger body of data out there?

jasongorman, to random
@jasongorman@mastodon.cloud avatar

On the topic of how copying & pasting code might impact learning, especially among inexperienced developers, there's research in this area that suggests I might not just be imagining it.

In studies, subjects who were restricted in copying & pasting retained more, but also understood better.

https://www.researchgate.net/publication/232457619_Exploring_Differences_in_Students'_Copy-and-Paste_Decision_Making_and_Processing_A_Mixed-Methods_Study

jasongorman, to random
@jasongorman@mastodon.cloud avatar

I watch dev teams every week wrestling with major downstream consequences of not taking enough care over their work, and then I hear managers warning them "Beware of taking too much care!", and I wonder if they and I are perhaps living in different universes.

jasongorman, to random
@jasongorman@mastodon.cloud avatar

Contrary to what I read on social media and in the mainstream press, when I think of the average software developer, I don't think of someone "moving fast and breaking things" in a cutting-edge tech start-up. I think of someone working in an established business on legacy systems that end users have come to rely on. Because that's what the vast majority of us actually do. Most software developers are in the distinctly not-cutting-edge business of keeping the proverbial lights on.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • provamag3
  • mdbf
  • ngwrru68w68
  • modclub
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • InstantRegret
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • GTA5RPClips
  • ethstaker
  • normalnudes
  • tester
  • osvaldo12
  • everett
  • cubers
  • tacticalgear
  • anitta
  • megavids
  • Leos
  • cisconetworking
  • lostlight
  • All magazines