Aug 27, 2019

Lessons Learned at Abstractions 2019

Two weeks into the job, my new employer sent me and a dozen other engineers, qa’s, and designers to Abstractions 2019, a cross-discipline software conference in Pittsburgh, PA. Headlining the group of speakers was the YouTuber and creater Simone Gertz, Chris Coyier of CodePen and CSS-Tricks, and Guillermo Rauch of Zeit.

I took down some notes for my team and me to reference after the event. If I have time, I’ll add more details including speakers, videos, and links. Until then, enjoy this for what it is!

Wednesday

Your Work Has Moral Implications

Tech has great power and great responsibility. Ensure that your team has a policy in place and make plans to protect yourself from moral crises.

How to Build a Community from Scratch

Find a consistent schedule to hold interesting meetings in an intimate environment.

Deep Learning for Developers

The barrier to entry for machine learning is lower than ever. Check it out!

Resources

  • TensorFlow
  • PyTorch
  • IBM Max

Building Accessibility Together

Every team should plan and work with accessibility in mind. Stick to best practices in design, markup, and scripting to help insure that products work well for everyone.

Software for people who don’t want it

Consider the end user when making all software decisions. Strive for an application that is as accessible and usable as possible.

Programming Productivity

Take the time to create tooling to standardize best practices. Use the JavaScript AST to write custom lint tools or CodeMods that will work across the codebase.

Thursday

Practical Open Source Security

Use available tools like npm audit to scan your dependencies regularly. Make it part of the regular code reviews and automate the process as much as possible.

Resources:

  • mitre
  • Snyk
  • webhint
  • Lighthouse
  • Dependabot

Those Who Can Do Should Also Teach

Teaching is a great way to reinforce your knowledge, and help people. Prepare your students for the challenges of learning something new and how to work through them. Teach targetted interactive lessons in 10-15 minute bursts.

Mentoring the Way to a More Inclusive Workplace

The tenants of good mentorship align with those of an inclusive workplace. List realistic criteria on job postings and provide specific constructive feedback throughout the hiring process. Have clear and structured onboarding, learning groups, and formalized mentorship/sponsorship. Don’t forget: mentorship is a learned skill that must be honed.

Readability & Web

Reading is a complex cognitive task. Around 10% of the global population has some degree of dyslexia. Improving readability for users with dyslexia helps everyone. Readability is about anything communicating meaningful information, including icons.

Fours C’s of readability

  • Continuity: reputation of the information until the endpoint
  • Conspicuity: beating easily seen or noticeable
  • Consistency: keeping the same wording along the way
  • Clarity: the message need to be clearly understandable

Building Afghanistan 2.0 with #AfghanGirlsCode

An Unforgettable Developer Experience

Everything we do is for the human being on the other side. There is a lot of value from making things more accessible. Make the process work for both novices and experts.

Friday

Humane Design Patterns

Considering the well-being of the user in your designs. Habit-forming products and sticky experiences might be bad for the people using them. Instead, align human goals and tech goals.

Resources

  • Abstract on Netflix
  • Humane by Design

Pedagogy in Pairing

Scope the activity so that it lends itself to joint productive activity. Remove all distractions during the session (e.g. phones). Point to the source of information; don’t spoon feed. Ground your activity in areas that your partner already understands.

Accessibility as a Bridge Between Designers and Engineers

We can communicate effectively only by speaking the same language: developers must understand design, and vice versa. Collaboration is key to an accessible product.

Resources

  • Accessibility Insights for Web
  • Vox Accessibility Guidelines

Teaching High School Computer Science

There are differences between teaching high schoolers and junior developers, but there are also a lot of similarities. Try to direct the student towards self discovery. Help work them through failures with learning in mind. GitHub pages provided a great experience with quick feedback.

Resources

  • TEALS
  • Pitt TLI Summer Program

Oops I Guess We’re Full-stack Developers Now

Certain tasks have shifted from the backend of the application to the front. There is a divide between frontend developers who focus on the front of the frontend and those who focus on the back.

Building UX Teams

Managers empower the team to realize its full potential. People have different skills, can work together, can learn, and can teach.

Proverbs 1:5 (SDG)

An illustration of Sean McPherson's face

My name is Sean McPherson, and I'm a software developer and educator living in Pittsburgh, PA.

I write about React, JavaScript, accessibility, user experience, and occasionally some other topics.