Alexander Bird @alexanderbird@mstdn.ca Profile
Alexander Bird @[email protected]

@alexander_bird

Followers
279
Following
4K
Media
41
Statuses
3K

Learning to build useful, valuable software as part of a team.

Vancouver, British Columbia
Joined October 2017
Don't wanna be here? Send us removal request.
@alexander_bird
Alexander Bird @[email protected]
7 years
What I really want, professionally, is to write software that: 1) solves a real problem for someone 2) actually gets used 3) works I wish this was the norm in our industry.
9
20
126
@alexander_bird
Alexander Bird @[email protected]
3 years
Er... I guess Twitter won't let me link to content that I've written on mstdn dot ca. If you're interested in what I'm writing, you can find it at @alexanderbird@mstdn.ca
0
0
1
@sarah_edo
Sarah Drasner
3 years
I was reading this book completely unrelated to productivity, and the author said (paraphrased) “This felt hard, so I asked myself what I could do towards my goal that felt easy, and did that instead” It’s been haunting my thoughts ever since.
17
87
1K
@alexander_bird
Alexander Bird @[email protected]
3 years
You can take the test/behaviour driven mindset all the way to your task tracking: each "todo" item on your team's planning board/list can be a test case (and the todo item describes the test, and implies "get this to pass"). ... https://t.co/RAEIssaFRT
0
0
1
@alexander_bird
Alexander Bird @[email protected]
3 years
For custom software, the harder it is to describe how the software should behave, the harder it will be to write it. (That's because coding is the exercise of precisely describing the intended behaviour of the system.) https://t.co/WRBsawhbfZ
0
0
0
@alexander_bird
Alexander Bird @[email protected]
3 years
One way to save time/money on a new build (software / home DIY / whatever) is to build everything together as a single piece. It'll probably look better too because it all fits together nicely. But if ... https://t.co/cA3OAfq2aU
0
0
1
@jitterted
Ted M. Young maker of tdd.cards
3 years
Test-Driven Development (#TDD) not only helps me go faster, but makes me more confident that _my_ code is working when troubleshooting problems. With under-tested code, all code is suspect. With TDD'd code, my code is (much) less suspect (innocent until _proven_ guilty).
1
2
15
@jangiacomelli
Jan Giacomelli
3 years
Most of what developers call refactoring is actually rewrite If there are no untouched tests that are confirming that behaviour is still the same as before - it's rewrite
2
12
45
@allenholub
Allen Holub. https://linkedIn.com/in/allenholub
3 years
Try swapping out "accountable" for "dependable." It's vastly better for the team to be dependable than accountable, I think.
16
26
142
@jessitron
Jessica Kerr
3 years
I like that “predictable” includes observability; @tastapod mentioned @mipsytipsy and building-in the figuring-out. #yowlondon
3
10
41
@lunivore
Liz Keogh
3 years
“Software development is about exploration and discovery, and we should be optimising for that. Optimise for learning. Optimise for managing complexity.” @davefarley77 #yowLondon This, this, this.
3
16
75
@scarletinked
Dave Anderson
3 years
The most efficient way to run a team / organization is not to keep it fully utilized. Hurts your brain, but it's true. When you're 100% booked, any delay causes ripple effects across every single project. It's oddly more efficient to keep some of your team idle.
25
136
738
@alexander_bird
Alexander Bird @[email protected]
3 years
By contrast, sometimes I'll write code that I don't unit test: a config file, invoking a constructor, passing strongly typed arguments (no branching), etc. When I do that, I ask myself "could someone break this while behaving reasonably and responsibly?" If yes, then test.
1
0
1
@alexander_bird
Alexander Bird @[email protected]
3 years
For example, if you have a "weird" bug fix with no unit test, someone may rework the code later to add some new capability. It's appropriate to refactor or clean up the code before you change it. But, the cleaner removed your bug fix and there was no test to tell them.
1
2
2
@alexander_bird
Alexander Bird @[email protected]
3 years
In a household it's a kind thing to take out the trash (and unfortunate when the trash wasn't really trash). At work it should be safe to take responsible initiative with the code without risking damage.
1
0
0
@alexander_bird
Alexander Bird @[email protected]
3 years
if you organize the code in a way that someone who is behaving reasonably could break the code and not know it, you're setting yourselves up for the sort of insidious production incident that requires backfilling months of corrupted data.
1
0
0
@alexander_bird
Alexander Bird @[email protected]
3 years
At home, I've learned the painful lesson that if you store something valuable in a container that makes it look like garbage, it's liable to be accidentally thrown out. In software, I see the same thing play out:
1
0
0
@AdamMGrant
Adam Grant
3 years
Changing your mind is not a sign of losing integrity. It's often a mark of gaining wisdom. Realizing you were wrong doesn't mean you lack judgment. It means you lacked knowledge. Opinions are what you think today. Growth comes from staying open to revising your views tomorrow.
74
2K
8K
@alexander_bird
Alexander Bird @[email protected]
3 years
Yes. Ensemble programming allows me to reduce the amount of interruptions / out-of-my-control context switches. On days when I can't handle extra stimulus, being in an ensemble is the safest way for me to work. The (healthy/effective) ensemble protects the focus.
0
0
3
@alexander_bird
Alexander Bird @[email protected]
3 years
The practice of rephrasing "we need solution X" as "we have problem Y" also improves our solution quality by optimizing for learning: instead of settling on a solution early on (when we know the least), we settle on a solution as late as possible (when we know the most).
0
0
0