A lot of people have a nagging feeling in the back of their minds that they should “learn to code” or undertake some other sort of technical self-education in order to improve their carer or become more effective at what they’re doing.

Chelsea Troy has a background in international relations and wanted to be a spy – but has self-educated and informally learned to code in more than a dozen languages and has also self-educated in machine learning and data science.

While this is impressive in and of itself, Chelsea also blogs regularly and shares her experiences and advice on coding and professional “leveling up” at www.chelseatroy.com.

Check out the full conversation with Chelsea to hear:

  • Why feeling stuck and frustrated is where you will spend most of your time when learning software development – and why learning more tools to get “unstuck” is how you level up
  • >How to make the decision-making process of artificial intelligence less opaque and “human legible” – and what the future of machine learning means for human work
  • How technology companies can improve diversity in their workforces and handle the associated internal friction and discomfort that comes along with increased diversity– both in terms of tangible actions for employees and managers as well as higher-level organizational changes to improve viewpoint diversity

Check out the episode at the links below. If you enjoyed the episode, the best way to support the show is to share with your friends, so send them a link.

Listen Here

Check out more from Chelsea here:

Show Notes:

  • [0:07] Self-educating in software development and data science through a project-based approach – and the strengths and weaknesses of project-based learning vs a formal academic model
  • [08:48] Almost all of your time in software development is spent at the margin of what you know how to do, so you have to be comfortable with being uncomfortable. Improvement often comes through bettering your ability to solve the inevitable problems that you will run into.
  • [19:12] Reduce the feedback loop as much as possible and create testing scenarios in order to rapidly iterate on software. One weird trick to learning software development: copy the changes that more experienced developers make to their code by hand
  • [30:30] The best learning comes from realizing that you’ve made a mistake. Having a generalist approach and understanding multiple programming languages enables solving problems in non-traditional ways.
  • [37:42] Should we believe the hype on machine learning? What will be the future of machine learning and how will humans work with this technology as we are able to automate more and more tasks and better recognize patterns in data?
  • [48:02] The dangers of algorithmic recommendations and the amount of resources going into increasing advertisement clicks through machine learning. Can we have machine learning algorithms make their decisions and categorizations “human legible”?
  • [1:03:07] How can tech companies move the needle on diversity in hiring? What actionable communication and management behaviors can individuals employ in terms of making technical companies more welcoming to underrepresented folks?
  • [1:14:07] How do we get more viewpoint diversity in the upper echelons of technology companies? Viewpoint diversity seems to clearly help companies improve performance, but can be painful and create more conflict within the organization.

Links and Resources Mentioned