Activity Day = NodeBots Workshop
Day 2 was activity day where attendees could go offsite for an adventure or stay onsite for workshops. I chose the workshop and was glad I did!
There were other reminders of the need for greater access to technologies as well.
Patricia Realini discussed the challenges faced by those without internet access at home. We are building amazing websites like online education services, but if someone doesn’t have internet connectivity at home, the library is often the only place for them to access these tools.
Jeremy Wagner made the related point that we as developers should “Make it Boring.” When using high-power devices with great network connections, it is easy for developers to focus on exciting development experiences for building interesting websites. However, making things simpler usually results in better experiences for users because it maintains consistency, is less prone to failure, and usually provides better performance.
I commend JSConf for acknowledging and addressing the importance of community. I came away with some great information about how to bring together people around the software. One of the highlights was Tierney Cyren‘s talk about Open Source communities. He explored the important social aspects of software development in order to build a thriving community around open source software.
Peter Aitken’s talk centered around Global Diversity CFP Day which promotes diversity in conference speaker lineups by training diverse speakers on how to put together a talk. It was encouraging to see the collection of conference organizers who were on board with this initiative as well as the speakers who had gone through the program.
Of course, there were talks about how our industry can do our jobs better. Since components are all the rage as a helpful way to separate code, many talks dove into techniques for maximizing components.
Luke Herrington demonstrated how his company has passed components as data, instead of hard-coding them into the application, allowing NBC to make multi-platform changes with a server-side change. As part of his talk Luke explored how we choose to decouple systems (typically backend and frontend) and where that division takes place. It was great getting to speak with Luke on the TalkScript podcast and discuss how the components as data model work for their use case.
Components also affect how we test and the practice of Test-Driven Development is often disregarded when dealing with presentation components. Tim Doherty challenged this, demonstrating how writing React components using TDD informs the development process, producing well tested components in the process.
End-to-end testing also is a helpful practice that developers often skip because of the extra time and thought required. But Nicholas Boll showed how we can separate pieces of end-to-end tests into reusable components just like we do with using interfaces. These separations sometimes match with a framework level component, but more generally allow reusing a test of functionality that is independent of implementation. Even selectors can be packaged into reusable pieces to help coordinate between component development and testing.
Dates and times are another aspect of programming that are constantly underestimated as Daniel Cousineau comically and pointedly demonstrated in his “Time is a Social Construct” talk. Using the simple example of wanting to remotely feed his cats, Daniel dove into the idiosyncrasies of how hours disappear, daylight savings keeps changing, UTC isn’t always the answer, and Florida is willing to change time and space to live up to its title as the sunshine state. The reality is that time is complex, and should be thoughtfully considered in web applications. Until browser standards evolve, libraries are an important tool to having accurate timestamps.
My experience was topped off by participating in the TalkScript activities throughout the conference. The TalkScript team interviewed 14 JSConf speakers and took part in the live lunchtime panel where we had fun dispelling straw-man arguments we encounter in the community. With help from some special guests, we explored and dismissed the myths of the reclusive the 10x developer and perfectly tested codebase.